Skip to content

Commit f1c47bb

Browse files
committed
test(version-scanner): refactor formatting tests to use a shared sample_match fixture
1 parent 156f2b8 commit f1c47bb

1 file changed

Lines changed: 19 additions & 59 deletions

File tree

scripts/version_scanner/tests/unit/test_version_scanner.py

Lines changed: 19 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -682,21 +682,9 @@ def test_safe_int():
682682
assert _safe_int(None) == 0
683683
assert _safe_int("abc") == 0
684684

685-
def test_format_for_raw_csv_handles_empty_line_number():
686-
match = {
687-
"file_path": "google-cloud-python/main/packages/pkg_a/setup.py",
688-
"repo_path": "packages/pkg_a/setup.py",
689-
"package_name": "pkg_a",
690-
"rule_name": "python_requires_check",
691-
"line_number": "",
692-
"matched_string": "3.7",
693-
"context_line": "python_requires = '>=3.7'"
694-
}
695-
formatted = format_for_raw_csv(match)
696-
assert formatted["line_number"] == 0
697-
698-
def test_format_for_raw_csv():
699-
match = {
685+
@pytest.fixture
686+
def sample_match():
687+
return {
700688
"file_name": "setup.py",
701689
"file_path": "google-cloud-python/main/packages/pkg_a/setup.py",
702690
"repo_path": "packages/pkg_a/setup.py",
@@ -708,8 +696,14 @@ def test_format_for_raw_csv():
708696
"dependency": "python",
709697
"version": "3.7"
710698
}
711-
712-
formatted = format_for_raw_csv(match)
699+
700+
def test_format_for_raw_csv_handles_empty_line_number(sample_match):
701+
sample_match["line_number"] = ""
702+
formatted = format_for_raw_csv(sample_match)
703+
assert formatted["line_number"] == 0
704+
705+
def test_format_for_raw_csv(sample_match):
706+
formatted = format_for_raw_csv(sample_match)
713707

714708
assert formatted["file_name"] == "setup.py"
715709
assert formatted["file_path"] == "google-cloud-python/main/packages/pkg_a/setup.py"
@@ -721,62 +715,28 @@ def test_format_for_raw_csv():
721715
assert formatted["dependency"] == "python"
722716
assert formatted["version"] == "3.7"
723717

724-
def test_format_for_raw_csv_fallback_filename():
725-
match = {
726-
"file_path": "google-cloud-python/main/packages/pkg_a/setup.py",
727-
"repo_path": "packages/pkg_a/setup.py",
728-
"package_name": "pkg_a",
729-
"rule_name": "python_requires_check",
730-
"line_number": "123",
731-
"matched_string": "3.7",
732-
"context_line": "python_requires = '>=3.7'",
733-
"dependency": "python",
734-
"version": "3.7"
735-
}
736-
737-
formatted = format_for_raw_csv(match)
718+
def test_format_for_raw_csv_fallback_filename(sample_match):
719+
del sample_match["file_name"]
720+
formatted = format_for_raw_csv(sample_match)
738721
assert formatted["file_name"] == "setup.py"
739722

740-
def test_format_for_spreadsheet():
741-
match = {
742-
"file_name": "setup.py",
743-
"file_path": "google-cloud-python/main/packages/pkg_a/setup.py",
744-
"repo_path": "packages/pkg_a/setup.py",
745-
"package_name": "pkg_a",
746-
"rule_name": "python_requires_check",
747-
"line_number": 123,
748-
"matched_string": "3.7",
749-
"context_line": "python_requires = '>=3.7'",
750-
"dependency": "python",
751-
"version": "3.7"
752-
}
753-
723+
def test_format_for_spreadsheet(sample_match):
754724
# Without github_repo
755-
formatted_no_repo = format_for_spreadsheet(match)
725+
formatted_no_repo = format_for_spreadsheet(sample_match)
756726
assert formatted_no_repo["file_name"] == "setup.py"
757727
assert formatted_no_repo["line_number"] == 123
758728
assert formatted_no_repo["matched_string"] == '="3.7"' # Decimal protection formula
759729
assert formatted_no_repo["dependency"] == "python"
760730
assert formatted_no_repo["version"] == "3.7"
761731

762732
# With github_repo
763-
formatted_repo = format_for_spreadsheet(match, github_repo="https://github.com/user/repo", branch="main")
733+
formatted_repo = format_for_spreadsheet(sample_match, github_repo="https://github.com/user/repo", branch="main")
764734
expected_url = "https://github.com/user/repo/blob/main/packages/pkg_a/setup.py#L123"
765735
assert formatted_repo["line_number"] == f'=HYPERLINK("{expected_url}", "123")'
766736
assert formatted_repo["matched_string"] == '="3.7"'
767737

768-
def test_format_for_console():
769-
match = {
770-
"file_path": "google-cloud-python/main/packages/pkg_a/setup.py",
771-
"repo_path": "packages/pkg_a/setup.py",
772-
"package_name": "pkg_a",
773-
"rule_name": "python_requires_check",
774-
"line_number": 123,
775-
"matched_string": "3.7",
776-
"context_line": "python_requires = '>=3.7'"
777-
}
778-
779-
log_str = format_for_console(match)
738+
def test_format_for_console(sample_match):
739+
log_str = format_for_console(sample_match)
780740
assert "google-cloud-python/main/packages/pkg_a/setup.py:123" in log_str
781741
assert "[python_requires_check]" in log_str
782742
assert "3.7" in log_str

0 commit comments

Comments
 (0)