def test_categorical(self): """Tests that categorical is supported""" categorical_config = copy.deepcopy(config) categorical_config["space"]["z"] = 'choices(["a", "b", "c"])' with create_experiment(categorical_config, trial_config) as (_, _, experiment): plot = parallel_coordinates(experiment) assert_parallel_coordinates_plot(plot, order=["x", "z", "loss"])
def test_fidelity(self): """Tests that fidelity is set to first column by default""" fidelity_config = copy.deepcopy(config) fidelity_config["space"]["z"] = "fidelity(1, 200, base=3)" with create_experiment(fidelity_config, trial_config) as (_, _, experiment): plot = parallel_coordinates(experiment) assert_parallel_coordinates_plot(plot, order=["z", "x", "loss"])
def test_order_columns(self): """Tests that columns are sorted according to ``order``""" multidim_config = copy.deepcopy(config) for k in "yzutv": multidim_config["space"][k] = "uniform(0, 200)" with create_experiment(multidim_config, trial_config) as (_, _, experiment): plot = parallel_coordinates(experiment, order="vzyx") assert_parallel_coordinates_plot(plot, order=["v", "z", "y", "x", "loss"])
def test_multidim(self): """Tests that dimensions with shape > 1 are flattened properly""" multidim_config = copy.deepcopy(config) multidim_config["space"]["y"] = "uniform(0, 200, shape=4)" with create_experiment(multidim_config, trial_config) as (_, _, experiment): plot = parallel_coordinates(experiment) assert_parallel_coordinates_plot( plot, order=["x", "y[0]", "y[1]", "y[2]", "y[3]", "loss"])
def test_experiment_worker_as_parameter(self): """Tests that ``Experiment`` is a valid parameter""" with create_experiment(config, trial_config, ["completed"]) as ( _, experiment, _, ): plot = parallel_coordinates(experiment) assert_parallel_coordinates_plot(plot, order=["x", "loss"])
def test_graph_layout(self): """Tests the layout of the plot""" with create_experiment(config, trial_config, ["completed"]) as ( _, _, experiment, ): plot = parallel_coordinates(experiment) assert_parallel_coordinates_plot(plot, order=["x", "loss"])
def test_returns_plotly_object(self): """Tests that the plotly backend returns a plotly object""" with create_experiment(config, trial_config, ["completed"]) as ( _, _, experiment, ): plot = parallel_coordinates(experiment) assert type(plot) is plotly.graph_objects.Figure
def test_unsupported_order_key(self): """Tests that unsupported order keys are rejected""" with create_experiment(config, trial_config) as (_, _, experiment): with pytest.raises(ValueError): parallel_coordinates(experiment, order=["unsupported"])
def test_ignore_uncompleted_statuses(self): """Tests that uncompleted statuses are ignored""" with create_experiment(config, trial_config) as (_, _, experiment): plot = parallel_coordinates(experiment) assert_parallel_coordinates_plot(plot, order=["x", "loss"])
def test_requires_argument(self): """Tests that the experiment data are required.""" with pytest.raises(ValueError): parallel_coordinates(None)