3737import java .util .Map ;
3838import java .util .Objects ;
3939import java .util .Optional ;
40+ import java .util .UUID ;
4041import java .util .concurrent .TimeUnit ;
4142import java .util .stream .Stream ;
4243import java .util .zip .ZipInputStream ;
@@ -115,9 +116,47 @@ public void testGetsAllExperiments() {
115116
116117 List <ExperimentMetadata > experiments = experimentsOpt .get ();
117118 assertFalse (experiments .isEmpty ());
118- boolean experimentExists = experiments .stream ()
119- .anyMatch (experiment -> SHARED_EXPERIMENT .getExperimentKey ().equals (experiment .getExperimentKey ()));
120- assertTrue (experimentExists );
119+ assertExperimentInList (SHARED_EXPERIMENT .getExperimentKey (), experiments );
120+ }
121+
122+ @ Test
123+ public void testGetExperiments_Workspace () {
124+ List <ExperimentMetadata > experiments = COMET_API .getExperiments (WORKSPACE_NAME );
125+ assertFalse (experiments .isEmpty ());
126+ assertExperimentInList (SHARED_EXPERIMENT .getExperimentKey (), experiments );
127+ }
128+
129+ @ Test
130+ public void testGetExperiments_Workspace_Project () {
131+ List <ExperimentMetadata > experiments = COMET_API .getExperiments (WORKSPACE_NAME , PROJECT_NAME );
132+ assertFalse (experiments .isEmpty ());
133+ assertExperimentInList (SHARED_EXPERIMENT .getExperimentKey (), experiments );
134+ }
135+
136+ @ Test
137+ public void testGetExperiments () throws Exception {
138+ String experimentName = UUID .randomUUID ().toString ();
139+ String experimentKey ;
140+ try (OnlineExperiment experiment = createOnlineExperiment ()) {
141+ experiment .setExperimentName (experimentName );
142+ experimentKey = experiment .getExperimentKey ();
143+
144+ // wait for experiment name to be updated
145+ awaitForCondition (() -> experimentName .equals (experiment .getMetadata ().getExperimentName ()),
146+ "Experiment name update timeout" );
147+ }
148+
149+ List <ExperimentMetadata > experiments = COMET_API .getExperiments (WORKSPACE_NAME , PROJECT_NAME , experimentName );
150+ assertEquals (1 , experiments .size (), "one experiment expected" );
151+
152+ ExperimentMetadata experimentMetadata = experiments .get (0 );
153+ assertEquals (experimentKey , experimentMetadata .getExperimentKey ());
154+ }
155+
156+ @ Test
157+ public void testGetExperiments_emptyProject_with_experimentName () {
158+ assertThrows (IllegalArgumentException .class , () ->
159+ COMET_API .getExperiments (WORKSPACE_NAME , null , "someExperiment*." ));
121160 }
122161
123162 @ Test
@@ -638,7 +677,7 @@ public void testDeleteRegistryModelVersion_model_doesnt_exists() {
638677 // try to delete version of not existing model
639678 //
640679 String modelName = "not existing model" ;
641- assertThrows (CometApiException .class , ()->
680+ assertThrows (CometApiException .class , () ->
642681 COMET_API .deleteRegistryModelVersion (modelName , SHARED_EXPERIMENT .getWorkspaceName (),
643682 DEFAULT_MODEL_VERSION ));
644683 }
@@ -653,7 +692,7 @@ public void testDeleteRegistryModelVersion_version_doesnt_exists() {
653692
654693 // try to delete not existing version of the model
655694 //
656- assertThrows (ModelVersionNotFoundException .class , ()->
695+ assertThrows (ModelVersionNotFoundException .class , () ->
657696 COMET_API .deleteRegistryModelVersion (modelName , SHARED_EXPERIMENT .getWorkspaceName (),
658697 "1.0.1" ));
659698 }
@@ -752,4 +791,10 @@ private static void logModelFolder(String modelName) {
752791 awaitForCondition (() -> !SHARED_EXPERIMENT .getAssetList (MODEL_ELEMENT .type ()).isEmpty (),
753792 "Failed to get logged model file" );
754793 }
794+
795+ private static void assertExperimentInList (String experimentKey , List <ExperimentMetadata > experiments ) {
796+ boolean experimentExists = experiments .stream ()
797+ .anyMatch (experiment -> experimentKey .equals (experiment .getExperimentKey ()));
798+ assertTrue (experimentExists );
799+ }
755800}
0 commit comments