From 1ef2a2d979861f5cc115eaabc2f3b4ed799e93d9 Mon Sep 17 00:00:00 2001 From: Colin Watson Date: Thu, 2 Jan 2025 22:41:43 +0000 Subject: [PATCH 1/4] Tests: clear `SOURCE_DATE_EPOCH` during `test_html_multi_line_copyright` Forwarded-by: James Addison Related-Bug: https://bugs.debian.org/1091951 --- tests/test_builders/test_build_html_copyright.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/tests/test_builders/test_build_html_copyright.py b/tests/test_builders/test_build_html_copyright.py index 7a18bceb603..db6dbbc5f82 100644 --- a/tests/test_builders/test_build_html_copyright.py +++ b/tests/test_builders/test_build_html_copyright.py @@ -9,6 +9,13 @@ LOCALTIME_2009 = type(LT)(LT_NEW) +@pytest.fixture +def no_source_date_year(monkeypatch): + with monkeypatch.context() as m: + m.delenv('SOURCE_DATE_EPOCH', raising=False) + yield + + @pytest.fixture( params=[ 1199145600, # 2008-01-01 00:00:00 @@ -24,7 +31,7 @@ def source_date_year(request, monkeypatch): @pytest.mark.sphinx('html', testroot='copyright-multiline') -def test_html_multi_line_copyright(app): +def test_html_multi_line_copyright(no_source_date_year, app): app.build(force_all=True) content = (app.outdir / 'index.html').read_text(encoding='utf-8') From 13fc0c7b57fe2b34ef2ee61738b5ed3486af9e6f Mon Sep 17 00:00:00 2001 From: James Addison Date: Fri, 10 Jan 2025 02:24:01 +0000 Subject: [PATCH 2/4] Tests: add explanatory docstring to fixture --- tests/test_builders/test_build_html_copyright.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/test_builders/test_build_html_copyright.py b/tests/test_builders/test_build_html_copyright.py index db6dbbc5f82..fed25067b4f 100644 --- a/tests/test_builders/test_build_html_copyright.py +++ b/tests/test_builders/test_build_html_copyright.py @@ -11,6 +11,9 @@ @pytest.fixture def no_source_date_year(monkeypatch): + """Explicitly clear SOURCE_DATE_EPOCH from the environment; this + fixture can be used to ensure that copyright substitution logic + does not occur during selected test cases.""" with monkeypatch.context() as m: m.delenv('SOURCE_DATE_EPOCH', raising=False) yield From c4095a7121dfb88afdee021ccd247849f844babb Mon Sep 17 00:00:00 2001 From: James Addison Date: Fri, 10 Jan 2025 02:28:02 +0000 Subject: [PATCH 3/4] Add CHANGES.rst entry --- CHANGES.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGES.rst b/CHANGES.rst index f9a587f3181..23ace2d3bc1 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -58,3 +58,6 @@ Bugs fixed Testing ------- + +* #13224: Correctness fixup for ``test_html_multi_line_copyright``. + Patch by Colin Watson, applied by James Addison. From 29d1de42da6e22e09f92d02c1964b6c5fdc93092 Mon Sep 17 00:00:00 2001 From: James Addison Date: Fri, 10 Jan 2025 02:33:57 +0000 Subject: [PATCH 4/4] Fixup: adhere to `ruff` formatting guidelines for docstring Relates-to commit 13fc0c7b57fe2b34ef2ee61738b5ed3486af9e6f. --- tests/test_builders/test_build_html_copyright.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/test_builders/test_build_html_copyright.py b/tests/test_builders/test_build_html_copyright.py index fed25067b4f..69ddd2d1f8a 100644 --- a/tests/test_builders/test_build_html_copyright.py +++ b/tests/test_builders/test_build_html_copyright.py @@ -11,9 +11,11 @@ @pytest.fixture def no_source_date_year(monkeypatch): - """Explicitly clear SOURCE_DATE_EPOCH from the environment; this + """ + Explicitly clear SOURCE_DATE_EPOCH from the environment; this fixture can be used to ensure that copyright substitution logic - does not occur during selected test cases.""" + does not occur during selected test cases. + """ with monkeypatch.context() as m: m.delenv('SOURCE_DATE_EPOCH', raising=False) yield