jason810496 commented on code in PR #42902:
URL: https://github.com/apache/airflow/pull/42902#discussion_r1796795367


##########
tests/utils/test_file.py:
##########
@@ -212,3 +213,26 @@ def test_get_modules_from_invalid_file(self):
         modules = list(file_utils.iter_airflow_imports(file_path))
 
         assert len(modules) == 0
+
+
+def test_get_unique_dag_module_name():
+    edge_filenames = [
+        "test_dag.py",
+        "test-dag.py",
+        "test-dag-1.py",
+        "test-dag_1.py",
+        "test-dag.dev.py",
+        "test_dag.prod.py",
+    ]
+    # sha1 of file_path in middle
+    expected_regex = [
+        r"unusual_prefix_[0-9a-f]{40}_test_dag",
+        r"unusual_prefix_[0-9a-f]{40}_test_dag",
+        r"unusual_prefix_[0-9a-f]{40}_test_dag_1",
+        r"unusual_prefix_[0-9a-f]{40}_test_dag_1",
+        r"unusual_prefix_[0-9a-f]{40}_test_dag_dev",
+        r"unusual_prefix_[0-9a-f]{40}_test_dag_prod",
+    ]
+    for idx, filename in enumerate(edge_filenames):
+        modify_module_name = file_utils.get_unique_dag_module_name(filename)
+        assert re2.match(re2.compile(expected_regex[idx]), modify_module_name) 
is not None

Review Comment:
   resolve: laverage `mock.patch` to mock `hashlib.sha1` and directly compare 
with expected output



-- 
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