You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm packaging your module as an rpm package so I'm using the typical PEP517 based build, install and test cycle used on building packages from non-root account.
python3 -sBm build -w --no-isolation
because I'm calling build with --no-isolation I'm using during all processes only locally installed modules
install .whl file in </install/prefix> using installer module
run pytest with $PYTHONPATH pointing to sitearch and sitelib inside </install/prefix>
build is performed in env which is cut off from access to the public network (pytest is executed with -m "not network")
Here is pytest output:
+ PYTHONPATH=/home/tkloczko/rpmbuild/BUILDROOT/python-sphinx-tabs-3.4.7-2.fc37.x86_64/usr/lib64/python3.10/site-packages:/home/tkloczko/rpmbuild/BUILDROOT/python-sphinx-tabs-3.4.7-2.fc37.x86_64/usr/lib/python3.10/site-packages+ /usr/bin/pytest -ra -m 'not network' --deselect tests/test_build.py::test_rinohtype_pdf==================================================================================== test session starts ====================================================================================platform linux -- Python 3.10.14, pytest-8.2.2, pluggy-1.5.0rootdir: /home/tkloczko/rpmbuild/BUILD/sphinx-tabs-3.4.7plugins: datadir-1.5.0, regressions-2.5.0collected 14 items / 1 deselected / 13 selectedtests/test_build.py EEEEEFFFEEEEE [100%]========================================================================================== ERRORS ===========================================================================================_______________________________________________________________________________ ERROR at setup of test_basic ________________________________________________________________________________app = <SphinxTestApp buildername='html'>, status = <_io.StringIO object at 0x7f4f63c33880>, warning = <_io.StringIO object at 0x7f4f63c33910>check_build_success = <function check_build_success.<locals>.check at 0x7f4f6306add0>, get_sphinx_app_doctree = <function get_sphinx_app_doctree.<locals>.read at 0x7f4f6306ae60>regress_sphinx_app_output = <function regress_sphinx_app_output.<locals>.read at 0x7f4f630bcb80>, request = <SubRequest 'auto_build_and_check' for <Function test_basic>> @pytest.fixture(autouse=True) def auto_build_and_check( app, status, warning, check_build_success, get_sphinx_app_doctree, regress_sphinx_app_output, request, ): """ Build and check build success and output regressions. Currently all tests start with this. Disable using a `noautobuild` mark. """ if "noautobuild" in request.keywords: return app.build() check_build_success(status, warning) get_sphinx_app_doctree(app, regress=True)
> regress_sphinx_app_output(app)tests/conftest.py:44:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _app = <SphinxTestApp buildername='html'>, buildername = 'html', filename = 'index.html', encoding = 'utf-8' def read(app, buildername="html", filename="index.html", encoding="utf-8"): content = get_sphinx_app_output(app, buildername, filename, encoding) if buildername == "html": soup = BeautifulSoup(content, "html.parser") # Remove output from ``pygments``, so that test only compares HTML of surrounding tabs for div in soup.find_all("div", {"class": "highlight"}): div.decompose() doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] doc = doc_div.prettify() else: doc = content
> file_regression.check( doc, extension="." + filename.split(".")[-1], encoding="utf8" )E AssertionError: FILES DIFFER:E /tmp/pytest-of-tkloczko/pytest-46/test_basic0/test_build/test_basic.htmlE /tmp/pytest-of-tkloczko/pytest-46/test_basic0/test_build/test_basic.obtained.htmlE HTML DIFF: /tmp/pytest-of-tkloczko/pytest-46/test_basic0/test_build/test_basic.obtained.diff.htmlE ---E +++E @@ -37,6 +37,8 @@E </p>E </div>E </div>E + <div class="clearer">E + </div>E </div>E </div>E </div>tests/conftest.py:99: AssertionError______________________________________________________________________________ ERROR at setup of test_no_tabs _______________________________________________________________________________app = <SphinxTestApp buildername='html'>, status = <_io.StringIO object at 0x7f4f62fdc430>, warning = <_io.StringIO object at 0x7f4f62fdc310>check_build_success = <function check_build_success.<locals>.check at 0x7f4f62fde320>, get_sphinx_app_doctree = <function get_sphinx_app_doctree.<locals>.read at 0x7f4f62fde290>regress_sphinx_app_output = <function regress_sphinx_app_output.<locals>.read at 0x7f4f62fde440>, request = <SubRequest 'auto_build_and_check' for <Function test_no_tabs>> @pytest.fixture(autouse=True) def auto_build_and_check( app, status, warning, check_build_success, get_sphinx_app_doctree, regress_sphinx_app_output, request, ): """ Build and check build success and output regressions. Currently all tests start with this. Disable using a `noautobuild` mark. """ if "noautobuild" in request.keywords: return app.build() check_build_success(status, warning) get_sphinx_app_doctree(app, regress=True)
> regress_sphinx_app_output(app)tests/conftest.py:44:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _app = <SphinxTestApp buildername='html'>, buildername = 'html', filename = 'index.html', encoding = 'utf-8' def read(app, buildername="html", filename="index.html", encoding="utf-8"): content = get_sphinx_app_output(app, buildername, filename, encoding) if buildername == "html": soup = BeautifulSoup(content, "html.parser") # Remove output from ``pygments``, so that test only compares HTML of surrounding tabs for div in soup.find_all("div", {"class": "highlight"}): div.decompose() doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] doc = doc_div.prettify() else: doc = content
> file_regression.check( doc, extension="." + filename.split(".")[-1], encoding="utf8" )E AssertionError: FILES DIFFER:E /tmp/pytest-of-tkloczko/pytest-46/test_no_tabs0/test_build/test_no_tabs.htmlE /tmp/pytest-of-tkloczko/pytest-46/test_no_tabs0/test_build/test_no_tabs.obtained.htmlE HTML DIFF: /tmp/pytest-of-tkloczko/pytest-46/test_no_tabs0/test_build/test_no_tabs.obtained.diff.htmlE ---E +++E @@ -4,6 +4,8 @@E <p>E There are no tabs hereE </p>E + <div class="clearer">E + </div>E </div>E </div>E </div>tests/conftest.py:99: AssertionError_____________________________________________________________________ ERROR at setup of test_conditional_assets[index] ______________________________________________________________________app = <SphinxTestApp buildername='html'>, status = <_io.StringIO object at 0x7f4f62fdf760>, warning = <_io.StringIO object at 0x7f4f62fdf880>check_build_success = <function check_build_success.<locals>.check at 0x7f4f62e856c0>, get_sphinx_app_doctree = <function get_sphinx_app_doctree.<locals>.read at 0x7f4f62e85630>regress_sphinx_app_output = <function regress_sphinx_app_output.<locals>.read at 0x7f4f62e857e0>, request = <SubRequest 'auto_build_and_check' for <Function test_conditional_assets[index]>> @pytest.fixture(autouse=True) def auto_build_and_check( app, status, warning, check_build_success, get_sphinx_app_doctree, regress_sphinx_app_output, request, ): """ Build and check build success and output regressions. Currently all tests start with this. Disable using a `noautobuild` mark. """ if "noautobuild" in request.keywords: return app.build() check_build_success(status, warning) get_sphinx_app_doctree(app, regress=True)
> regress_sphinx_app_output(app)tests/conftest.py:44:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _app = <SphinxTestApp buildername='html'>, buildername = 'html', filename = 'index.html', encoding = 'utf-8' def read(app, buildername="html", filename="index.html", encoding="utf-8"): content = get_sphinx_app_output(app, buildername, filename, encoding) if buildername == "html": soup = BeautifulSoup(content, "html.parser") # Remove output from ``pygments``, so that test only compares HTML of surrounding tabs for div in soup.find_all("div", {"class": "highlight"}): div.decompose() doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] doc = doc_div.prettify() else: doc = content
> file_regression.check( doc, extension="." + filename.split(".")[-1], encoding="utf8" )E AssertionError: FILES DIFFER:E /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_index_0/test_build/test_conditional_assets_index_.htmlE /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_index_0/test_build/test_conditional_assets_index_.obtained.htmlE HTML DIFF: /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_index_0/test_build/test_conditional_assets_index_.obtained.diff.htmlE ---E +++E @@ -243,6 +243,8 @@E </div>E </div>E </section>E + <div class="clearer">E + </div>E </div>E </div>E </div>tests/conftest.py:99: AssertionError____________________________________________________________________ ERROR at setup of test_conditional_assets[no_tabs1] ____________________________________________________________________app = <SphinxTestApp buildername='html'>, status = <_io.StringIO object at 0x7f4f62d475b0>, warning = <_io.StringIO object at 0x7f4f62d47ac0>check_build_success = <function check_build_success.<locals>.check at 0x7f4f62da88b0>, get_sphinx_app_doctree = <function get_sphinx_app_doctree.<locals>.read at 0x7f4f62da8700>regress_sphinx_app_output = <function regress_sphinx_app_output.<locals>.read at 0x7f4f62da89d0>request = <SubRequest 'auto_build_and_check' for <Function test_conditional_assets[no_tabs1]>> @pytest.fixture(autouse=True) def auto_build_and_check( app, status, warning, check_build_success, get_sphinx_app_doctree, regress_sphinx_app_output, request, ): """ Build and check build success and output regressions. Currently all tests start with this. Disable using a `noautobuild` mark. """ if "noautobuild" in request.keywords: return app.build() check_build_success(status, warning) get_sphinx_app_doctree(app, regress=True)
> regress_sphinx_app_output(app)tests/conftest.py:44:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _app = <SphinxTestApp buildername='html'>, buildername = 'html', filename = 'index.html', encoding = 'utf-8' def read(app, buildername="html", filename="index.html", encoding="utf-8"): content = get_sphinx_app_output(app, buildername, filename, encoding) if buildername == "html": soup = BeautifulSoup(content, "html.parser") # Remove output from ``pygments``, so that test only compares HTML of surrounding tabs for div in soup.find_all("div", {"class": "highlight"}): div.decompose() doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] doc = doc_div.prettify() else: doc = content
> file_regression.check( doc, extension="." + filename.split(".")[-1], encoding="utf8" )E AssertionError: FILES DIFFER:E /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_no_tab0/test_build/test_conditional_assets_no_tabs1_.htmlE /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_no_tab0/test_build/test_conditional_assets_no_tabs1_.obtained.htmlE HTML DIFF: /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_no_tab0/test_build/test_conditional_assets_no_tabs1_.obtained.diff.htmlE ---E +++E @@ -243,6 +243,8 @@E </div>E </div>E </section>E + <div class="clearer">E + </div>E </div>E </div>E </div>tests/conftest.py:99: AssertionError____________________________________________________________________ ERROR at setup of test_conditional_assets[no_tabs2] ____________________________________________________________________app = <SphinxTestApp buildername='html'>, status = <_io.StringIO object at 0x7f4f62e852d0>, warning = <_io.StringIO object at 0x7f4f62e85630>check_build_success = <function check_build_success.<locals>.check at 0x7f4f62da9990>, get_sphinx_app_doctree = <function get_sphinx_app_doctree.<locals>.read at 0x7f4f62da97e0>regress_sphinx_app_output = <function regress_sphinx_app_output.<locals>.read at 0x7f4f62da9ab0>request = <SubRequest 'auto_build_and_check' for <Function test_conditional_assets[no_tabs2]>> @pytest.fixture(autouse=True) def auto_build_and_check( app, status, warning, check_build_success, get_sphinx_app_doctree, regress_sphinx_app_output, request, ): """ Build and check build success and output regressions. Currently all tests start with this. Disable using a `noautobuild` mark. """ if "noautobuild" in request.keywords: return app.build() check_build_success(status, warning) get_sphinx_app_doctree(app, regress=True)
> regress_sphinx_app_output(app)tests/conftest.py:44:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _app = <SphinxTestApp buildername='html'>, buildername = 'html', filename = 'index.html', encoding = 'utf-8' def read(app, buildername="html", filename="index.html", encoding="utf-8"): content = get_sphinx_app_output(app, buildername, filename, encoding) if buildername == "html": soup = BeautifulSoup(content, "html.parser") # Remove output from ``pygments``, so that test only compares HTML of surrounding tabs for div in soup.find_all("div", {"class": "highlight"}): div.decompose() doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] doc = doc_div.prettify() else: doc = content
> file_regression.check( doc, extension="." + filename.split(".")[-1], encoding="utf8" )E AssertionError: FILES DIFFER:E /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_no_tab1/test_build/test_conditional_assets_no_tabs2_.htmlE /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_no_tab1/test_build/test_conditional_assets_no_tabs2_.obtained.htmlE HTML DIFF: /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_no_tab1/test_build/test_conditional_assets_no_tabs2_.obtained.diff.htmlE ---E +++E @@ -243,6 +243,8 @@E </div>E </div>E </section>E + <div class="clearer">E + </div>E </div>E </div>E </div>tests/conftest.py:99: AssertionError_________________________________________________________________________ ERROR at setup of test_other_with_assets __________________________________________________________________________app = <SphinxTestApp buildername='html'>, status = <_io.StringIO object at 0x7f4f62947ac0>, warning = <_io.StringIO object at 0x7f4f62947910>check_build_success = <function check_build_success.<locals>.check at 0x7f4f62898d30>, get_sphinx_app_doctree = <function get_sphinx_app_doctree.<locals>.read at 0x7f4f62898ca0>regress_sphinx_app_output = <function regress_sphinx_app_output.<locals>.read at 0x7f4f62898e50>, request = <SubRequest 'auto_build_and_check' for <Function test_other_with_assets>> @pytest.fixture(autouse=True) def auto_build_and_check( app, status, warning, check_build_success, get_sphinx_app_doctree, regress_sphinx_app_output, request, ): """ Build and check build success and output regressions. Currently all tests start with this. Disable using a `noautobuild` mark. """ if "noautobuild" in request.keywords: return app.build() check_build_success(status, warning) get_sphinx_app_doctree(app, regress=True)
> regress_sphinx_app_output(app)tests/conftest.py:44:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _app = <SphinxTestApp buildername='html'>, buildername = 'html', filename = 'index.html', encoding = 'utf-8' def read(app, buildername="html", filename="index.html", encoding="utf-8"): content = get_sphinx_app_output(app, buildername, filename, encoding) if buildername == "html": soup = BeautifulSoup(content, "html.parser") # Remove output from ``pygments``, so that test only compares HTML of surrounding tabs for div in soup.find_all("div", {"class": "highlight"}): div.decompose() doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] doc = doc_div.prettify() else: doc = content
> file_regression.check( doc, extension="." + filename.split(".")[-1], encoding="utf8" )E AssertionError: FILES DIFFER:E /tmp/pytest-of-tkloczko/pytest-46/test_other_with_assets0/test_build/test_other_with_assets.htmlE /tmp/pytest-of-tkloczko/pytest-46/test_other_with_assets0/test_build/test_other_with_assets.obtained.htmlE HTML DIFF: /tmp/pytest-of-tkloczko/pytest-46/test_other_with_assets0/test_build/test_other_with_assets.obtained.diff.htmlE ---E +++E @@ -19,6 +19,8 @@E </div>E </div>E </div>E + <div class="clearer">E + </div>E </div>E </div>E </div>tests/conftest.py:99: AssertionError___________________________________________________________________________ ERROR at setup of test_nested_markup ____________________________________________________________________________app = <SphinxTestApp buildername='html'>, status = <_io.StringIO object at 0x7f4f6289be20>, warning = <_io.StringIO object at 0x7f4f6289b520>check_build_success = <function check_build_success.<locals>.check at 0x7f4f62898940>, get_sphinx_app_doctree = <function get_sphinx_app_doctree.<locals>.read at 0x7f4f62898dc0>regress_sphinx_app_output = <function regress_sphinx_app_output.<locals>.read at 0x7f4f6289a4d0>, request = <SubRequest 'auto_build_and_check' for <Function test_nested_markup>> @pytest.fixture(autouse=True) def auto_build_and_check( app, status, warning, check_build_success, get_sphinx_app_doctree, regress_sphinx_app_output, request, ): """ Build and check build success and output regressions. Currently all tests start with this. Disable using a `noautobuild` mark. """ if "noautobuild" in request.keywords: return app.build() check_build_success(status, warning) get_sphinx_app_doctree(app, regress=True)
> regress_sphinx_app_output(app)tests/conftest.py:44:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _app = <SphinxTestApp buildername='html'>, buildername = 'html', filename = 'index.html', encoding = 'utf-8' def read(app, buildername="html", filename="index.html", encoding="utf-8"): content = get_sphinx_app_output(app, buildername, filename, encoding) if buildername == "html": soup = BeautifulSoup(content, "html.parser") # Remove output from ``pygments``, so that test only compares HTML of surrounding tabs for div in soup.find_all("div", {"class": "highlight"}): div.decompose() doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] doc = doc_div.prettify() else: doc = content
> file_regression.check( doc, extension="." + filename.split(".")[-1], encoding="utf8" )E AssertionError: FILES DIFFER:E /tmp/pytest-of-tkloczko/pytest-46/test_nested_markup0/test_build/test_nested_markup.htmlE /tmp/pytest-of-tkloczko/pytest-46/test_nested_markup0/test_build/test_nested_markup.obtained.htmlE HTML DIFF: /tmp/pytest-of-tkloczko/pytest-46/test_nested_markup0/test_build/test_nested_markup.obtained.diff.htmlE ---E +++E @@ -207,6 +207,8 @@E </div>E </div>E </section>E + <div class="clearer">E + </div>E </div>E </div>E </div>tests/conftest.py:99: AssertionError____________________________________________________________________________ ERROR at setup of test_custom_lexer ____________________________________________________________________________app = <SphinxTestApp buildername='html'>, status = <_io.StringIO object at 0x7f4f62947b50>, warning = <_io.StringIO object at 0x7f4f62947d90>check_build_success = <function check_build_success.<locals>.check at 0x7f4f62944dc0>, get_sphinx_app_doctree = <function get_sphinx_app_doctree.<locals>.read at 0x7f4f62945fc0>regress_sphinx_app_output = <function regress_sphinx_app_output.<locals>.read at 0x7f4f62945f30>, request = <SubRequest 'auto_build_and_check' for <Function test_custom_lexer>> @pytest.fixture(autouse=True) def auto_build_and_check( app, status, warning, check_build_success, get_sphinx_app_doctree, regress_sphinx_app_output, request, ): """ Build and check build success and output regressions. Currently all tests start with this. Disable using a `noautobuild` mark. """ if "noautobuild" in request.keywords: return app.build() check_build_success(status, warning) get_sphinx_app_doctree(app, regress=True)
> regress_sphinx_app_output(app)tests/conftest.py:44:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _app = <SphinxTestApp buildername='html'>, buildername = 'html', filename = 'index.html', encoding = 'utf-8' def read(app, buildername="html", filename="index.html", encoding="utf-8"): content = get_sphinx_app_output(app, buildername, filename, encoding) if buildername == "html": soup = BeautifulSoup(content, "html.parser") # Remove output from ``pygments``, so that test only compares HTML of surrounding tabs for div in soup.find_all("div", {"class": "highlight"}): div.decompose() doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] doc = doc_div.prettify() else: doc = content
> file_regression.check( doc, extension="." + filename.split(".")[-1], encoding="utf8" )E AssertionError: FILES DIFFER:E /tmp/pytest-of-tkloczko/pytest-46/test_custom_lexer0/test_build/test_custom_lexer.htmlE /tmp/pytest-of-tkloczko/pytest-46/test_custom_lexer0/test_build/test_custom_lexer.obtained.htmlE HTML DIFF: /tmp/pytest-of-tkloczko/pytest-46/test_custom_lexer0/test_build/test_custom_lexer.obtained.diff.htmlE ---E +++E @@ -19,6 +19,8 @@E </div>E </div>E </div>E + <div class="clearer">E + </div>E </div>E </div>E </div>tests/conftest.py:99: AssertionError__________________________________________________________________________ ERROR at setup of test_disable_closing ___________________________________________________________________________app = <SphinxTestApp buildername='html'>, status = <_io.StringIO object at 0x7f4f62947a30>, warning = <_io.StringIO object at 0x7f4f62945990>check_build_success = <function check_build_success.<locals>.check at 0x7f4f62da8c10>, get_sphinx_app_doctree = <function get_sphinx_app_doctree.<locals>.read at 0x7f4f62da9240>regress_sphinx_app_output = <function regress_sphinx_app_output.<locals>.read at 0x7f4f62da8ee0>, request = <SubRequest 'auto_build_and_check' for <Function test_disable_closing>> @pytest.fixture(autouse=True) def auto_build_and_check( app, status, warning, check_build_success, get_sphinx_app_doctree, regress_sphinx_app_output, request, ): """ Build and check build success and output regressions. Currently all tests start with this. Disable using a `noautobuild` mark. """ if "noautobuild" in request.keywords: return app.build() check_build_success(status, warning) get_sphinx_app_doctree(app, regress=True)
> regress_sphinx_app_output(app)tests/conftest.py:44:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _app = <SphinxTestApp buildername='html'>, buildername = 'html', filename = 'index.html', encoding = 'utf-8' def read(app, buildername="html", filename="index.html", encoding="utf-8"): content = get_sphinx_app_output(app, buildername, filename, encoding) if buildername == "html": soup = BeautifulSoup(content, "html.parser") # Remove output from ``pygments``, so that test only compares HTML of surrounding tabs for div in soup.find_all("div", {"class": "highlight"}): div.decompose() doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] doc = doc_div.prettify() else: doc = content
> file_regression.check( doc, extension="." + filename.split(".")[-1], encoding="utf8" )E AssertionError: FILES DIFFER:E /tmp/pytest-of-tkloczko/pytest-46/test_disable_closing0/test_build/test_disable_closing.htmlE /tmp/pytest-of-tkloczko/pytest-46/test_disable_closing0/test_build/test_disable_closing.obtained.htmlE HTML DIFF: /tmp/pytest-of-tkloczko/pytest-46/test_disable_closing0/test_build/test_disable_closing.obtained.diff.htmlE ---E +++E @@ -37,6 +37,8 @@E </p>E </div>E </div>E + <div class="clearer">E + </div>E </div>E </div>E </div>tests/conftest.py:99: AssertionError________________________________________________________________________ ERROR at setup of test_disable_css_loading _________________________________________________________________________app = <SphinxTestApp buildername='html'>, status = <_io.StringIO object at 0x7f4f62da8d30>, warning = <_io.StringIO object at 0x7f4f62da8280>check_build_success = <function check_build_success.<locals>.check at 0x7f4f62d457e0>, get_sphinx_app_doctree = <function get_sphinx_app_doctree.<locals>.read at 0x7f4f62d45bd0>regress_sphinx_app_output = <function regress_sphinx_app_output.<locals>.read at 0x7f4f62d45480>, request = <SubRequest 'auto_build_and_check' for <Function test_disable_css_loading>> @pytest.fixture(autouse=True) def auto_build_and_check( app, status, warning, check_build_success, get_sphinx_app_doctree, regress_sphinx_app_output, request, ): """ Build and check build success and output regressions. Currently all tests start with this. Disable using a `noautobuild` mark. """ if "noautobuild" in request.keywords: return app.build() check_build_success(status, warning) get_sphinx_app_doctree(app, regress=True)
> regress_sphinx_app_output(app)tests/conftest.py:44:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _app = <SphinxTestApp buildername='html'>, buildername = 'html', filename = 'index.html', encoding = 'utf-8' def read(app, buildername="html", filename="index.html", encoding="utf-8"): content = get_sphinx_app_output(app, buildername, filename, encoding) if buildername == "html": soup = BeautifulSoup(content, "html.parser") # Remove output from ``pygments``, so that test only compares HTML of surrounding tabs for div in soup.find_all("div", {"class": "highlight"}): div.decompose() doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] doc = doc_div.prettify() else: doc = content
> file_regression.check( doc, extension="." + filename.split(".")[-1], encoding="utf8" )E AssertionError: FILES DIFFER:E /tmp/pytest-of-tkloczko/pytest-46/test_disable_css_loading0/test_build/test_disable_css_loading.htmlE /tmp/pytest-of-tkloczko/pytest-46/test_disable_css_loading0/test_build/test_disable_css_loading.obtained.htmlE HTML DIFF: /tmp/pytest-of-tkloczko/pytest-46/test_disable_css_loading0/test_build/test_disable_css_loading.obtained.diff.htmlE ---E +++E @@ -37,6 +37,8 @@E </p>E </div>E </div>E + <div class="clearer">E + </div>E </div>E </div>E </div>tests/conftest.py:99: AssertionError========================================================================================= FAILURES ==========================================================================================_____________________________________________________________________ test_conditional_assets_html_assets_policy[index] _____________________________________________________________________app = <SphinxTestApp buildername='html'>, docname = 'index', status = <_io.StringIO object at 0x7f4f62da95a0>, warning = <_io.StringIO object at 0x7f4f62da8940>check_build_success = <function check_build_success.<locals>.check at 0x7f4f62daaa70>, get_sphinx_app_doctree = <function get_sphinx_app_doctree.<locals>.read at 0x7f4f62daa9e0>regress_sphinx_app_output = <function regress_sphinx_app_output.<locals>.read at 0x7f4f62daab90>, check_asset_links = <function check_asset_links.<locals>.check at 0x7f4f62daac20> @pytest.mark.noautobuild @pytest.mark.parametrize("docname", ["index", "no_tabs1", "no_tabs2"]) @pytest.mark.sphinx(testroot="conditionalassets-policy") def test_conditional_assets_html_assets_policy( app, docname, status, warning, check_build_success, get_sphinx_app_doctree, regress_sphinx_app_output, check_asset_links, ): app.set_html_assets_policy("always") # Following lines are copied from ``auto_build_and_check`` since we need to # set a config in the build object before auto build. Because of this, we # need to use ``noautobuild``. app.build() check_build_success(status, warning) get_sphinx_app_doctree(app, regress=True)
> regress_sphinx_app_output(app)tests/test_build.py:49:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _app = <SphinxTestApp buildername='html'>, buildername = 'html', filename = 'index.html', encoding = 'utf-8' def read(app, buildername="html", filename="index.html", encoding="utf-8"): content = get_sphinx_app_output(app, buildername, filename, encoding) if buildername == "html": soup = BeautifulSoup(content, "html.parser") # Remove output from ``pygments``, so that test only compares HTML of surrounding tabs for div in soup.find_all("div", {"class": "highlight"}): div.decompose() doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] doc = doc_div.prettify() else: doc = content
> file_regression.check( doc, extension="." + filename.split(".")[-1], encoding="utf8" )E AssertionError: FILES DIFFER:E /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_html_a0/test_build/test_conditional_assets_html_assets_policy_index_.htmlE /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_html_a0/test_build/test_conditional_assets_html_assets_policy_index_.obtained.htmlE HTML DIFF: /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_html_a0/test_build/test_conditional_assets_html_assets_policy_index_.obtained.diff.htmlE ---E +++E @@ -243,6 +243,8 @@E </div>E </div>E </section>E + <div class="clearer">E + </div>E </div>E </div>E </div>tests/conftest.py:99: AssertionError--------------------------------------------------------------------------------- Captured stdout teardown ----------------------------------------------------------------------------------
# testroot: root
# builder: html
# srcdir: /tmp/pytest-of-tkloczko/pytest-46/conditionalassets-policy
# outdir: /tmp/pytest-of-tkloczko/pytest-46/conditionalassets-policy/_build/html
# status:Running Sphinx v8.1.3loading translations [en]... doneConverting `source_suffix = '.rst'` to `source_suffix = {'.rst': 'restructuredtext'}`.building [mo]: targets for 0 po files that are out of datewriting output...building [html]: targets for 3 source files that are out of dateupdating environment: [new config] 3 added, 0 changed, 0 removedreading sources... [ 33%] indexreading sources... [ 67%] no_tabs1reading sources... [100%] no_tabs2looking for now-outdated files... none foundpickling environment... donechecking consistency... donepreparing documents... donecopying assets...copying static files...Writing evaluated template result to /tmp/pytest-of-tkloczko/pytest-46/conditionalassets-policy/_build/html/_static/basic.cssWriting evaluated template result to /tmp/pytest-of-tkloczko/pytest-46/conditionalassets-policy/_build/html/_static/documentation_options.jsWriting evaluated template result to /tmp/pytest-of-tkloczko/pytest-46/conditionalassets-policy/_build/html/_static/language_data.jscopying static files: donecopying extra files...copying extra files: donecopying assets: donewriting output... [ 33%] indexwriting output... [ 67%] no_tabs1writing output... [100%] no_tabs2generating indices... genindex donewriting additional pages... search donedumping search index in English (code: en)... donedumping object inventory... donebuild succeeded.The HTML pages are in ../../../../../tmp/pytest-of-tkloczko/pytest-46/conditionalassets-policy/_build/html.
# warning:___________________________________________________________________ test_conditional_assets_html_assets_policy[no_tabs1] ____________________________________________________________________app = <SphinxTestApp buildername='html'>, docname = 'no_tabs1', status = <_io.StringIO object at 0x7f4f62dabeb0>, warning = <_io.StringIO object at 0x7f4f62da9a20>check_build_success = <function check_build_success.<locals>.check at 0x7f4f62945090>, get_sphinx_app_doctree = <function get_sphinx_app_doctree.<locals>.read at 0x7f4f62946320>regress_sphinx_app_output = <function regress_sphinx_app_output.<locals>.read at 0x7f4f62945630>, check_asset_links = <function check_asset_links.<locals>.check at 0x7f4f629455a0> @pytest.mark.noautobuild @pytest.mark.parametrize("docname", ["index", "no_tabs1", "no_tabs2"]) @pytest.mark.sphinx(testroot="conditionalassets-policy") def test_conditional_assets_html_assets_policy( app, docname, status, warning, check_build_success, get_sphinx_app_doctree, regress_sphinx_app_output, check_asset_links, ): app.set_html_assets_policy("always") # Following lines are copied from ``auto_build_and_check`` since we need to # set a config in the build object before auto build. Because of this, we # need to use ``noautobuild``. app.build() check_build_success(status, warning) get_sphinx_app_doctree(app, regress=True)
> regress_sphinx_app_output(app)tests/test_build.py:49:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _app = <SphinxTestApp buildername='html'>, buildername = 'html', filename = 'index.html', encoding = 'utf-8' def read(app, buildername="html", filename="index.html", encoding="utf-8"): content = get_sphinx_app_output(app, buildername, filename, encoding) if buildername == "html": soup = BeautifulSoup(content, "html.parser") # Remove output from ``pygments``, so that test only compares HTML of surrounding tabs for div in soup.find_all("div", {"class": "highlight"}): div.decompose() doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] doc = doc_div.prettify() else: doc = content
> file_regression.check( doc, extension="." + filename.split(".")[-1], encoding="utf8" )E AssertionError: FILES DIFFER:E /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_html_a1/test_build/test_conditional_assets_html_assets_policy_no_tabs1_.htmlE /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_html_a1/test_build/test_conditional_assets_html_assets_policy_no_tabs1_.obtained.htmlE HTML DIFF: /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_html_a1/test_build/test_conditional_assets_html_assets_policy_no_tabs1_.obtained.diff.htmlE ---E +++E @@ -243,6 +243,8 @@E </div>E </div>E </section>E + <div class="clearer">E + </div>E </div>E </div>E </div>tests/conftest.py:99: AssertionError--------------------------------------------------------------------------------- Captured stdout teardown ----------------------------------------------------------------------------------
# testroot: root
# builder: html
# srcdir: /tmp/pytest-of-tkloczko/pytest-46/conditionalassets-policy
# outdir: /tmp/pytest-of-tkloczko/pytest-46/conditionalassets-policy/_build/html
# status:Running Sphinx v8.1.3loading translations [en]... doneConverting `source_suffix = '.rst'` to `source_suffix = {'.rst': 'restructuredtext'}`.loading pickled environment... The configuration has changed (2 options: 'html_static_path', 'html_theme')donebuilding [mo]: targets for 0 po files that are out of datewriting output...building [html]: targets for 0 source files that are out of dateupdating environment: 0 added, 0 changed, 0 removedreading sources...looking for now-outdated files... none foundno targets are out of date.build succeeded.The HTML pages are in ../../../../../tmp/pytest-of-tkloczko/pytest-46/conditionalassets-policy/_build/html.
# warning:___________________________________________________________________ test_conditional_assets_html_assets_policy[no_tabs2] ____________________________________________________________________app = <SphinxTestApp buildername='html'>, docname = 'no_tabs2', status = <_io.StringIO object at 0x7f4f629463b0>, warning = <_io.StringIO object at 0x7f4f62946830>check_build_success = <function check_build_success.<locals>.check at 0x7f4f62947640>, get_sphinx_app_doctree = <function get_sphinx_app_doctree.<locals>.read at 0x7f4f62947490>regress_sphinx_app_output = <function regress_sphinx_app_output.<locals>.read at 0x7f4f62947760>, check_asset_links = <function check_asset_links.<locals>.check at 0x7f4f629477f0> @pytest.mark.noautobuild @pytest.mark.parametrize("docname", ["index", "no_tabs1", "no_tabs2"]) @pytest.mark.sphinx(testroot="conditionalassets-policy") def test_conditional_assets_html_assets_policy( app, docname, status, warning, check_build_success, get_sphinx_app_doctree, regress_sphinx_app_output, check_asset_links, ): app.set_html_assets_policy("always") # Following lines are copied from ``auto_build_and_check`` since we need to # set a config in the build object before auto build. Because of this, we # need to use ``noautobuild``. app.build() check_build_success(status, warning) get_sphinx_app_doctree(app, regress=True)
> regress_sphinx_app_output(app)tests/test_build.py:49:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _app = <SphinxTestApp buildername='html'>, buildername = 'html', filename = 'index.html', encoding = 'utf-8' def read(app, buildername="html", filename="index.html", encoding="utf-8"): content = get_sphinx_app_output(app, buildername, filename, encoding) if buildername == "html": soup = BeautifulSoup(content, "html.parser") # Remove output from ``pygments``, so that test only compares HTML of surrounding tabs for div in soup.find_all("div", {"class": "highlight"}): div.decompose() doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] doc = doc_div.prettify() else: doc = content
> file_regression.check( doc, extension="." + filename.split(".")[-1], encoding="utf8" )E AssertionError: FILES DIFFER:E /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_html_a2/test_build/test_conditional_assets_html_assets_policy_no_tabs2_.htmlE /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_html_a2/test_build/test_conditional_assets_html_assets_policy_no_tabs2_.obtained.htmlE HTML DIFF: /tmp/pytest-of-tkloczko/pytest-46/test_conditional_assets_html_a2/test_build/test_conditional_assets_html_assets_policy_no_tabs2_.obtained.diff.htmlE ---E +++E @@ -243,6 +243,8 @@E </div>E </div>E </section>E + <div class="clearer">E + </div>E </div>E </div>E </div>tests/conftest.py:99: AssertionError--------------------------------------------------------------------------------- Captured stdout teardown ----------------------------------------------------------------------------------
# testroot: root
# builder: html
# srcdir: /tmp/pytest-of-tkloczko/pytest-46/conditionalassets-policy
# outdir: /tmp/pytest-of-tkloczko/pytest-46/conditionalassets-policy/_build/html
# status:Running Sphinx v8.1.3loading translations [en]... doneConverting `source_suffix = '.rst'` to `source_suffix = {'.rst': 'restructuredtext'}`.loading pickled environment... The configuration has changed (2 options: 'html_static_path', 'html_theme')donebuilding [mo]: targets for 0 po files that are out of datewriting output...building [html]: targets for 0 source files that are out of dateupdating environment: 0 added, 0 changed, 0 removedreading sources...looking for now-outdated files... none foundno targets are out of date.build succeeded.The HTML pages are in ../../../../../tmp/pytest-of-tkloczko/pytest-46/conditionalassets-policy/_build/html.
# warning:================================================================================== short test summary info ==================================================================================ERROR tests/test_build.py::test_basic - AssertionError: FILES DIFFER:ERROR tests/test_build.py::test_no_tabs - AssertionError: FILES DIFFER:ERROR tests/test_build.py::test_conditional_assets[index] - AssertionError: FILES DIFFER:ERROR tests/test_build.py::test_conditional_assets[no_tabs1] - AssertionError: FILES DIFFER:ERROR tests/test_build.py::test_conditional_assets[no_tabs2] - AssertionError: FILES DIFFER:ERROR tests/test_build.py::test_other_with_assets - AssertionError: FILES DIFFER:ERROR tests/test_build.py::test_nested_markup - AssertionError: FILES DIFFER:ERROR tests/test_build.py::test_custom_lexer - AssertionError: FILES DIFFER:ERROR tests/test_build.py::test_disable_closing - AssertionError: FILES DIFFER:ERROR tests/test_build.py::test_disable_css_loading - AssertionError: FILES DIFFER:FAILED tests/test_build.py::test_conditional_assets_html_assets_policy[index] - AssertionError: FILES DIFFER:FAILED tests/test_build.py::test_conditional_assets_html_assets_policy[no_tabs1] - AssertionError: FILES DIFFER:FAILED tests/test_build.py::test_conditional_assets_html_assets_policy[no_tabs2] - AssertionError: FILES DIFFER:======================================================================== 3 failed, 1 deselected, 10 errors in 2.66s =========================================================================
Please let me know if you need more details or want me to perform some diagnostics.
Describe the bug
Looks like pytest fails with
FILES DIFFER
errors.Reproduce the bug
I'm packaging your module as an rpm package so I'm using the typical PEP517 based build, install and test cycle used on building packages from non-root account.
python3 -sBm build -w --no-isolation
build
with--no-isolation
I'm using during all processes only locally installed modulesinstaller
modulecut off from access to the public network
(pytest is executed with-m "not network"
)Here is pytest output:
Please let me know if you need more details or want me to perform some diagnostics.
List your environment
List of installed modules in build env:
The text was updated successfully, but these errors were encountered: