Skip to content

Commit fc41813

Browse files
jedcunninghamgot686-yandex
authored andcommitted
Move list_py_file_paths test to the right file (apache#45617)
1 parent 6ba001a commit fc41813

File tree

2 files changed

+33
-32
lines changed

2 files changed

+33
-32
lines changed

tests/jobs/test_scheduler_job.py

-31
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,6 @@
6969
from airflow.serialization.serialized_objects import SerializedDAG
7070
from airflow.timetables.base import DataInterval
7171
from airflow.utils import timezone
72-
from airflow.utils.file import list_py_file_paths
7372
from airflow.utils.session import create_session, provide_session
7473
from airflow.utils.state import DagRunState, State, TaskInstanceState
7574
from airflow.utils.types import DagRunType
@@ -3531,36 +3530,6 @@ def test_dag_get_active_runs(self, dag_maker):
35313530

35323531
assert logical_date == running_date, "Running Date must match Execution Date"
35333532

3534-
def test_list_py_file_paths(self):
3535-
"""
3536-
[JIRA-1357] Test the 'list_py_file_paths' function used by the
3537-
scheduler to list and load DAGs.
3538-
"""
3539-
detected_files = set()
3540-
expected_files = set()
3541-
# No_dags is empty, _invalid_ is ignored by .airflowignore
3542-
ignored_files = {
3543-
"no_dags.py",
3544-
"test_invalid_cron.py",
3545-
"test_invalid_dup_task.py",
3546-
"test_ignore_this.py",
3547-
"test_invalid_param.py",
3548-
"test_invalid_param2.py",
3549-
"test_invalid_param3.py",
3550-
"test_invalid_param4.py",
3551-
"test_nested_dag.py",
3552-
"test_imports.py",
3553-
"__init__.py",
3554-
}
3555-
for root, _, files in os.walk(TEST_DAG_FOLDER):
3556-
for file_name in files:
3557-
if file_name.endswith((".py", ".zip")):
3558-
if file_name not in ignored_files:
3559-
expected_files.add(f"{root}/{file_name}")
3560-
for file_path in list_py_file_paths(TEST_DAG_FOLDER):
3561-
detected_files.add(file_path)
3562-
assert detected_files == expected_files
3563-
35643533
def test_adopt_or_reset_orphaned_tasks_nothing(self):
35653534
"""Try with nothing."""
35663535
scheduler_job = Job()

tests/utils/test_file.py

+33-1
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,18 @@
2525
import pytest
2626

2727
from airflow.utils import file as file_utils
28-
from airflow.utils.file import correct_maybe_zipped, find_path_from_directory, open_maybe_zipped
28+
from airflow.utils.file import (
29+
correct_maybe_zipped,
30+
find_path_from_directory,
31+
list_py_file_paths,
32+
open_maybe_zipped,
33+
)
2934

3035
from tests.models import TEST_DAGS_FOLDER
3136
from tests_common.test_utils.config import conf_vars
3237

38+
TEST_DAG_FOLDER = os.environ["AIRFLOW__CORE__DAGS_FOLDER"]
39+
3340

3441
def might_contain_dag(file_path: str, zip_file: zipfile.ZipFile | None = None):
3542
return False
@@ -212,6 +219,31 @@ def test_get_modules_from_invalid_file(self):
212219

213220
assert len(modules) == 0
214221

222+
def test_list_py_file_paths(self):
223+
detected_files = set()
224+
expected_files = set()
225+
# No_dags is empty, _invalid_ is ignored by .airflowignore
226+
ignored_files = {
227+
"no_dags.py",
228+
"test_invalid_cron.py",
229+
"test_invalid_dup_task.py",
230+
"test_ignore_this.py",
231+
"test_invalid_param.py",
232+
"test_invalid_param2.py",
233+
"test_invalid_param3.py",
234+
"test_invalid_param4.py",
235+
"test_nested_dag.py",
236+
"test_imports.py",
237+
"__init__.py",
238+
}
239+
for root, _, files in os.walk(TEST_DAG_FOLDER):
240+
for file_name in files:
241+
if file_name.endswith((".py", ".zip")):
242+
if file_name not in ignored_files:
243+
expected_files.add(f"{root}/{file_name}")
244+
detected_files = set(list_py_file_paths(TEST_DAG_FOLDER))
245+
assert detected_files == expected_files
246+
215247

216248
@pytest.mark.parametrize(
217249
"edge_filename, expected_modification",

0 commit comments

Comments
 (0)