e-galan commented on code in PR #39752:
URL: https://github.com/apache/airflow/pull/39752#discussion_r1610768094


##########
tests/providers/google/cloud/operators/test_automl.py:
##########
@@ -379,63 +379,51 @@ def test_templating(self, 
create_task_instance_of_operator):
         assert task.impersonation_chain == "impersonation-chain"
 
 
-class TestAutoMLListColumnsSpecsOperator:
+class TestAutoMLTablesListColumnsSpecsOperator:
+    expected_deprecation_warning = (
+        "Class `AutoMLTablesListColumnSpecsOperator` has been deprecated and 
will be removed after 31.12.2024. "
+        "AutoML platform no longer supports tabular datasets after its 
integration with Cloud Translation and Vertex AI. "
+        "Please refer to 
https://cloud.google.com/vertex-ai/docs/start/migrating-to-vertex-ai and "
+        "https://cloud.google.com/translate/docs/advanced/automl-upgrade for 
more info about available alternatives."
+    )
+
     
@mock.patch("airflow.providers.google.cloud.operators.automl.CloudAutoMLHook")
     def test_execute(self, mock_hook):
         table_spec = "table_spec_id"
         filter_ = "filter"
         page_size = 42
 
-        op = AutoMLTablesListColumnSpecsOperator(
-            dataset_id=DATASET_ID,
-            table_spec_id=table_spec,
-            location=GCP_LOCATION,
-            project_id=GCP_PROJECT_ID,
-            field_mask=MASK,
-            filter_=filter_,
-            page_size=page_size,
-            task_id=TASK_ID,
-        )
-        op.execute(context=mock.MagicMock())
-        mock_hook.return_value.list_column_specs.assert_called_once_with(
-            dataset_id=DATASET_ID,
-            field_mask=MASK,
-            filter_=filter_,
-            location=GCP_LOCATION,
-            metadata=(),
-            page_size=page_size,
-            project_id=GCP_PROJECT_ID,
-            retry=DEFAULT,
-            table_spec_id=table_spec,
-            timeout=None,
-        )
+        with pytest.raises(AirflowProviderDeprecationWarning, 
match=self.expected_deprecation_warning):

Review Comment:
   @Taragolis in this PR I followed the example of #38673 , which had been 
approved by the community and merged. In that PR the operators that were no 
longer working (`AutoMLTablesUpdateDatasetOperator` and 
`AutoMLDeployModelOperator`) were deprecated with `action="error"`  which will 
raise an exception when if we try to instantiate the operators or run their 
methods. 
   
   The operators that I'm trying to deprecate in this PR are also no longer 
working (the corresponding AutoML functionality was disabled a couple months 
ago, please read more in the PR desc), so I thought that I should follow the 
same approach, and assigned `action="error"` in the deprecated decorator.
   
   Because of this `pytest.warns` did not work in the unit tests, so I changed 
it to `pytest.raises`. I also had to update the related unit tests, because the 
operator methods started to raise the exceptions instead of working.
   
   In one of your comments you suggest to remove  `action="error"` because *if 
users wanted they could configure it by Python builtin [Warnings 
Control](https://docs.python.org/3/library/warnings.html#the-warnings-filter) 
we should not force it to the to the error.* 
   
   I can do it, I just think there should be a single approach here. Meaning 
that:
   1) We can follow the example of #38673 , and in this case I don't need to 
make the changes that you requested. 
   2) I can follow your suggestions, remove  `action="error"` and make the 
corresponding changes in the unit tests. Then I suppose I will need to do the 
same for `AutoMLTablesUpdateDatasetOperator` and `AutoMLDeployModelOperator`.
   
   What do you think?
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@airflow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to