def test_create_experiment_client_error(mocker): mock_client = mocker.Mock() mock_client.create.side_effect = HttpError(mocker.Mock(), "Error") mocker.patch("faculty.client", return_value=mock_client) store = FacultyRestStore(STORE_URI) with pytest.raises(MlflowException, match="Error"): store.create_experiment(NAME, ARTIFACT_LOCATION)
def test_create_experiment_name_conflict(mocker): exception = ExperimentNameConflict("bad name") mock_client = mocker.Mock() mock_client.create.side_effect = exception mocker.patch("faculty.client", return_value=mock_client) store = FacultyRestStore(STORE_URI) with pytest.raises(MlflowException, match=str(exception)): store.create_experiment(NAME, ARTIFACT_LOCATION)
def test_create_experiment(mocker): mock_client = mocker.Mock() mock_client.create.return_value = FACULTY_EXPERIMENT mocker.patch("faculty.client", return_value=mock_client) store = FacultyRestStore(STORE_URI) experiment_id = store.create_experiment(NAME, ARTIFACT_LOCATION) assert experiment_id == str(FACULTY_EXPERIMENT.id) mock_client.create.assert_called_once_with( PROJECT_ID, NAME, artifact_location=ARTIFACT_LOCATION)