SIENTIAPDE-1646
Pin sqlalchemy<2.1 to fix psycopg driver break; use tmp_path in retrain - sqlalchemy 2.1 defaults postgresql:// URLs to psycopg (v3), but sientia_do only ships psycopg2-binary, breaking with "No module named psycopg" - Replace hardcoded 'tmp' mkdtemp mock with pytest tmp_path fixture in retrain_model tests to avoid writing to a fake path
This commit is contained in:
@@ -375,9 +375,9 @@ def test_request_predict_failure(mock_to_datetime, mock_from_dataframe, mlflow):
|
||||
@patch('laborious.activities.mlflow.rmtree')
|
||||
@patch('laborious.activities.mlflow.to_datetime')
|
||||
def test_retrain_model_success_data_success_retrain(
|
||||
mock_to_datetime, mock_rmtree, mock_mkdtemp, mock_log_artifact, mlflow
|
||||
mock_to_datetime, mock_rmtree, mock_mkdtemp, mock_log_artifact, mlflow, tmp_path
|
||||
):
|
||||
mock_mkdtemp.return_value = 'tmp'
|
||||
mock_mkdtemp.return_value = str(tmp_path)
|
||||
mock_to_datetime.side_effect = lambda idx, **kwargs: pd.DatetimeIndex(idx)
|
||||
|
||||
mv_alias = MagicMock()
|
||||
@@ -428,9 +428,9 @@ def test_retrain_model_success_data_success_retrain(
|
||||
@patch('laborious.activities.mlflow.rmtree')
|
||||
@patch('laborious.activities.mlflow.to_datetime')
|
||||
def test_retrain_model_success_with_payload_data(
|
||||
mock_to_datetime, mock_rmtree, mock_mkdtemp, mock_log_artifact, mlflow
|
||||
mock_to_datetime, mock_rmtree, mock_mkdtemp, mock_log_artifact, mlflow, tmp_path
|
||||
):
|
||||
mock_mkdtemp.return_value = 'tmp'
|
||||
mock_mkdtemp.return_value = str(tmp_path)
|
||||
mock_to_datetime.side_effect = lambda idx, **kwargs: pd.DatetimeIndex(idx)
|
||||
mv_alias = MagicMock(run_id='src')
|
||||
mlflow.mlflow_repository._client.get_model_version_by_alias.return_value = mv_alias
|
||||
@@ -473,9 +473,9 @@ def test_retrain_model_success_with_payload_data(
|
||||
@patch('laborious.activities.mlflow.rmtree')
|
||||
@patch('laborious.activities.mlflow.to_datetime')
|
||||
def test_retrain_model_always_uses_retrain_even_with_full_retrain_flag(
|
||||
mock_to_datetime, mock_rmtree, mock_mkdtemp, mock_log_artifact, mlflow
|
||||
mock_to_datetime, mock_rmtree, mock_mkdtemp, mock_log_artifact, mlflow, tmp_path
|
||||
):
|
||||
mock_mkdtemp.return_value = 'tmp'
|
||||
mock_mkdtemp.return_value = str(tmp_path)
|
||||
mock_to_datetime.side_effect = lambda idx, **kwargs: pd.DatetimeIndex(idx)
|
||||
mv_alias = MagicMock(run_id='src')
|
||||
mlflow.mlflow_repository._client.get_model_version_by_alias.return_value = mv_alias
|
||||
|
||||
Reference in New Issue
Block a user