From 21c3666691848e13cab87a6b792a5d66b2c05883 Mon Sep 17 00:00:00 2001 From: pdmurray Date: Mon, 25 Sep 2023 18:20:42 -0700 Subject: [PATCH 01/12] [Doc] Fix broken pytest fixture --- tests/conftest.py | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/tests/conftest.py b/tests/conftest.py index 1573ca38..150cc448 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -15,6 +15,7 @@ import nbformat as nbf import pytest import sphinx +from sphinx.testing.path import path as sphinx_path from sphinx.util.console import nocolor pytest_plugins = "sphinx.testing.fixtures" @@ -148,7 +149,7 @@ def test_something(sphinx_run): @pytest.fixture() -def sphinx_run(sphinx_params, make_app, tempdir): +def sphinx_run(sphinx_params, make_app, tmpdir): """A fixture to setup and run a sphinx build, in a sandboxed folder. The `myst_nb` extension ius added by default, @@ -169,13 +170,11 @@ def sphinx_run(sphinx_params, make_app, tempdir): current_dir = os.getcwd() if "working_dir" in sphinx_params: - from sphinx.testing.path import path - - base_dir = path(sphinx_params["working_dir"]) / str(uuid.uuid4()) + base_dir = Path(sphinx_params["working_dir"]) / str(uuid.uuid4()) else: - base_dir = tempdir + base_dir = Path(tmpdir) srcdir = base_dir / "source" - srcdir.makedirs(exist_ok=True) + srcdir.mkdir(exist_ok=True) os.chdir(base_dir) (srcdir / "conf.py").write_text( "# conf overrides (passed directly to sphinx):\n" @@ -188,11 +187,16 @@ def sphinx_run(sphinx_params, make_app, tempdir): for nb_file in sphinx_params["files"]: nb_path = TEST_FILE_DIR.joinpath(nb_file) assert nb_path.exists(), nb_path - (srcdir / nb_file).parent.makedirs(exist_ok=True) + (srcdir / nb_file).parent.mkdir(exist_ok=True) (srcdir / nb_file).write_text(nb_path.read_text(encoding="utf8")) nocolor() - app = make_app(buildername=buildername, srcdir=srcdir, confoverrides=confoverrides) + + # For compatibility with multiple versions of sphinx, convert pathlib.Path to + # sphinx.testing.path.path here. + app = make_app( + buildername=buildername, srcdir=sphinx_path(srcdir), confoverrides=confoverrides + ) yield SphinxFixture(app, sphinx_params["files"]) From ebc0f0da9b3c1205da863b1905d1776708d1a806 Mon Sep 17 00:00:00 2001 From: Angus Hollands Date: Tue, 26 Sep 2023 14:48:11 +0100 Subject: [PATCH 02/12] fix: support older sphinx --- tests/conftest.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/tests/conftest.py b/tests/conftest.py index 150cc448..25ea11df 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -15,7 +15,7 @@ import nbformat as nbf import pytest import sphinx -from sphinx.testing.path import path as sphinx_path +from sphinx import version_info as sphinx_version_info from sphinx.util.console import nocolor pytest_plugins = "sphinx.testing.fixtures" @@ -172,7 +172,7 @@ def sphinx_run(sphinx_params, make_app, tmpdir): if "working_dir" in sphinx_params: base_dir = Path(sphinx_params["working_dir"]) / str(uuid.uuid4()) else: - base_dir = Path(tmpdir) + base_dir = tmpdir srcdir = base_dir / "source" srcdir.mkdir(exist_ok=True) os.chdir(base_dir) @@ -194,8 +194,15 @@ def sphinx_run(sphinx_params, make_app, tmpdir): # For compatibility with multiple versions of sphinx, convert pathlib.Path to # sphinx.testing.path.path here. + app_srcdir: Any + if sphinx_version_info >= (7, 2): + app_srcdir = srcdir + else: + from sphinx.testing.path import path + + app_srcdir = path(os.fspath(srcdir)) app = make_app( - buildername=buildername, srcdir=sphinx_path(srcdir), confoverrides=confoverrides + buildername=buildername, srcdir=app_srcdir, confoverrides=confoverrides ) yield SphinxFixture(app, sphinx_params["files"]) From b3746315ff52dcac14dce1cd0bb9d41f96b54981 Mon Sep 17 00:00:00 2001 From: Angus Hollands Date: Tue, 26 Sep 2023 15:06:04 +0100 Subject: [PATCH 03/12] fix: bugs in last patch --- myst_nb/core/execute/inline.py | 2 ++ tests/conftest.py | 9 ++++----- tests/test_cli.py | 21 ++++++++++++++++----- tests/test_parser.py | 6 +++--- 4 files changed, 25 insertions(+), 13 deletions(-) diff --git a/myst_nb/core/execute/inline.py b/myst_nb/core/execute/inline.py index 13d20786..656dc1d2 100644 --- a/myst_nb/core/execute/inline.py +++ b/myst_nb/core/execute/inline.py @@ -188,6 +188,7 @@ async def async_eval_expression(self, name: str) -> list[NotebookNode]: task_poll_kernel_alive, ) ) + print("EXECUTE", str(name)) try: await self.task_poll_for_reply except asyncio.CancelledError: @@ -202,6 +203,7 @@ async def async_eval_expression(self, name: str) -> list[NotebookNode]: task_poll_output_msg.cancel() finally: raise + print("EXECUTE DONE", str(name), cell.outputs) return cell.outputs eval_expression = run_sync(async_eval_expression) diff --git a/tests/conftest.py b/tests/conftest.py index 25ea11df..725fc31d 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -149,11 +149,11 @@ def test_something(sphinx_run): @pytest.fixture() -def sphinx_run(sphinx_params, make_app, tmpdir): +def sphinx_run(sphinx_params, make_app, tmp_path): """A fixture to setup and run a sphinx build, in a sandboxed folder. - The `myst_nb` extension ius added by default, - and the first file will be set as the materdoc + The `myst_nb` extension is added by default, + and the first file will be set as the masterdoc """ assert len(sphinx_params["files"]) > 0, sphinx_params["files"] @@ -172,7 +172,7 @@ def sphinx_run(sphinx_params, make_app, tmpdir): if "working_dir" in sphinx_params: base_dir = Path(sphinx_params["working_dir"]) / str(uuid.uuid4()) else: - base_dir = tmpdir + base_dir = tmp_path srcdir = base_dir / "source" srcdir.mkdir(exist_ok=True) os.chdir(base_dir) @@ -194,7 +194,6 @@ def sphinx_run(sphinx_params, make_app, tmpdir): # For compatibility with multiple versions of sphinx, convert pathlib.Path to # sphinx.testing.path.path here. - app_srcdir: Any if sphinx_version_info >= (7, 2): app_srcdir = srcdir else: diff --git a/tests/test_cli.py b/tests/test_cli.py index c3ced9f6..3f10de06 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -2,15 +2,16 @@ from pathlib import Path import nbformat -from sphinx.testing.path import path as sphinx_path +import os +from sphinx import version_info as sphinx_version_info from myst_nb.cli import md_to_nb, quickstart -def test_quickstart(tmp_path: Path, make_app): +def test_quickstart(tmp_path: Path, sphinx_run, make_app): """Test the quickstart CLI builds a valid sphinx project.""" - path = tmp_path / "project" - quickstart([str(path)]) + project_path = tmp_path / "project" + quickstart([str(project_path)]) assert {p.name for p in path.iterdir()} == { ".gitignore", "conf.py", @@ -18,7 +19,17 @@ def test_quickstart(tmp_path: Path, make_app): "notebook1.ipynb", "notebook2.md", } - app = make_app(srcdir=sphinx_path(str(path)), buildername="html") + + # For compatibility with multiple versions of sphinx, convert pathlib.Path to + # sphinx.testing.path.path here. + if sphinx_version_info >= (7, 2): + app_srcdir = project_path + else: + from sphinx.testing.path import path + + app_srcdir = path(os.fspath(project_path)) + + app = make_app(srcdir=app_srcdir, buildername="html") app.build() assert app._warning.getvalue().strip() == "" assert (path / "_build/html/index.html").exists() diff --git a/tests/test_parser.py b/tests/test_parser.py index aec866ca..ecdb8b7f 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -28,7 +28,7 @@ def test_basic_run(sphinx_run, file_regression): ) filenames = { - p for p in (sphinx_run.app.srcdir / "_build" / "jupyter_execute").listdir() + p.name for p in Path(os.fspath(sphinx_run.app.srcdir / "_build" / "jupyter_execute")).iterdir() } assert filenames == {"basic_run.ipynb"} @@ -67,8 +67,8 @@ def test_complex_outputs(sphinx_run, file_regression): file_regression.check(doctree_string, extension=".xml", encoding="utf8") filenames = { - p.replace(".jpeg", ".jpg") - for p in (sphinx_run.app.srcdir / "_build" / "jupyter_execute").listdir() + p.replace(".jpeg", ".jpg").name + for p in Path(os.fspath(sphinx_run.app.srcdir / "_build" / "jupyter_execute")).iterdir() } # print(filenames) assert filenames == { From 8950695ef3bde46963b8f906ca0ed54241a597ea Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 26 Sep 2023 14:06:42 +0000 Subject: [PATCH 04/12] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- tests/test_cli.py | 2 +- tests/test_parser.py | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/tests/test_cli.py b/tests/test_cli.py index 3f10de06..cb87402d 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -1,8 +1,8 @@ """Test the quickstart CLI""" +import os from pathlib import Path import nbformat -import os from sphinx import version_info as sphinx_version_info from myst_nb.cli import md_to_nb, quickstart diff --git a/tests/test_parser.py b/tests/test_parser.py index ecdb8b7f..ca099d0c 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -28,7 +28,10 @@ def test_basic_run(sphinx_run, file_regression): ) filenames = { - p.name for p in Path(os.fspath(sphinx_run.app.srcdir / "_build" / "jupyter_execute")).iterdir() + p.name + for p in Path( + os.fspath(sphinx_run.app.srcdir / "_build" / "jupyter_execute") + ).iterdir() } assert filenames == {"basic_run.ipynb"} @@ -68,7 +71,9 @@ def test_complex_outputs(sphinx_run, file_regression): filenames = { p.replace(".jpeg", ".jpg").name - for p in Path(os.fspath(sphinx_run.app.srcdir / "_build" / "jupyter_execute")).iterdir() + for p in Path( + os.fspath(sphinx_run.app.srcdir / "_build" / "jupyter_execute") + ).iterdir() } # print(filenames) assert filenames == { From 6099ef12a30262e5219771bc66d7b22ef95d5906 Mon Sep 17 00:00:00 2001 From: Angus Hollands Date: Tue, 26 Sep 2023 15:12:57 +0100 Subject: [PATCH 05/12] test: patch regression checks for now --- tests/conftest.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/tests/conftest.py b/tests/conftest.py index 725fc31d..d39b6ebd 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -2,6 +2,7 @@ import os from pathlib import Path import uuid +import re import bs4 from docutils.nodes import image as image_node @@ -269,7 +270,6 @@ def _func(doctree): return _func -# TODO Remove when support for Sphinx<=6 is dropped, # comparison files will need updating # alternatively the resolution of https://github.com/ESSS/pytest-regressions/issues/32 @pytest.fixture() @@ -278,7 +278,12 @@ def file_regression(file_regression): class FileRegression: - ignores = (" translation_progress=\"{'total': 0, 'translated': 0}\"",) + ignores = ( + # TODO: Remove when support for Sphinx<=6 is dropped, + re.escape(" translation_progress=\"{'total': 0, 'translated': 0}\""), + # TODO: Remove when support for Sphinx<7.2 is dropped, + r"original_uri=\"[^\"]*\"\s", + ) def __init__(self, file_regression): self.file_regression = file_regression @@ -288,5 +293,5 @@ def check(self, data, **kwargs): def _strip_ignores(self, data): for ig in self.ignores: - data = data.replace(ig, "") + data = re.sub(ig, "", data) return data From b3c87d86ea51633f227fa48fc27877e6b82cd525 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 26 Sep 2023 14:14:04 +0000 Subject: [PATCH 06/12] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- tests/conftest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/conftest.py b/tests/conftest.py index d39b6ebd..7c61f19d 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -1,8 +1,8 @@ import json import os from pathlib import Path -import uuid import re +import uuid import bs4 from docutils.nodes import image as image_node From 5035b82cba896a6cb8d58a3ce0d38d2c93d8dd2c Mon Sep 17 00:00:00 2001 From: Angus Hollands Date: Tue, 26 Sep 2023 15:14:32 +0100 Subject: [PATCH 07/12] chore: remove debug statements --- myst_nb/core/execute/inline.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/myst_nb/core/execute/inline.py b/myst_nb/core/execute/inline.py index 656dc1d2..13d20786 100644 --- a/myst_nb/core/execute/inline.py +++ b/myst_nb/core/execute/inline.py @@ -188,7 +188,6 @@ async def async_eval_expression(self, name: str) -> list[NotebookNode]: task_poll_kernel_alive, ) ) - print("EXECUTE", str(name)) try: await self.task_poll_for_reply except asyncio.CancelledError: @@ -203,7 +202,6 @@ async def async_eval_expression(self, name: str) -> list[NotebookNode]: task_poll_output_msg.cancel() finally: raise - print("EXECUTE DONE", str(name), cell.outputs) return cell.outputs eval_expression = run_sync(async_eval_expression) From 2066c66479876a7012e57082534b997dea0e0f8a Mon Sep 17 00:00:00 2001 From: Angus Hollands Date: Tue, 26 Sep 2023 15:33:59 +0100 Subject: [PATCH 08/12] test: fix `replace` --- tests/test_parser.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_parser.py b/tests/test_parser.py index ca099d0c..9e0186a0 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -70,7 +70,7 @@ def test_complex_outputs(sphinx_run, file_regression): file_regression.check(doctree_string, extension=".xml", encoding="utf8") filenames = { - p.replace(".jpeg", ".jpg").name + p.name.replace(".jpeg", ".jpg") for p in Path( os.fspath(sphinx_run.app.srcdir / "_build" / "jupyter_execute") ).iterdir() From 451b38ae9c3313d7f6a5107be5c2a0a24241451e Mon Sep 17 00:00:00 2001 From: Angus Hollands Date: Tue, 26 Sep 2023 16:34:42 +0100 Subject: [PATCH 09/12] test; fix further typo --- tests/test_cli.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_cli.py b/tests/test_cli.py index cb87402d..26f8da8c 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -12,7 +12,7 @@ def test_quickstart(tmp_path: Path, sphinx_run, make_app): """Test the quickstart CLI builds a valid sphinx project.""" project_path = tmp_path / "project" quickstart([str(project_path)]) - assert {p.name for p in path.iterdir()} == { + assert {p.name for p in project_path.iterdir()} == { ".gitignore", "conf.py", "index.md", From 6dc67b6b07e41a9155e559fb4bda9d4e31abc1c5 Mon Sep 17 00:00:00 2001 From: Angus Hollands Date: Tue, 26 Sep 2023 16:52:29 +0100 Subject: [PATCH 10/12] test: drop unused fixture --- tests/test_cli.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_cli.py b/tests/test_cli.py index 26f8da8c..31fdb020 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -8,7 +8,7 @@ from myst_nb.cli import md_to_nb, quickstart -def test_quickstart(tmp_path: Path, sphinx_run, make_app): +def test_quickstart(tmp_path: Path, make_app): """Test the quickstart CLI builds a valid sphinx project.""" project_path = tmp_path / "project" quickstart([str(project_path)]) From fda5bf5ff74588cf473e12c967b44465116ea6cb Mon Sep 17 00:00:00 2001 From: Angus Hollands Date: Tue, 26 Sep 2023 16:57:15 +0100 Subject: [PATCH 11/12] test: more misnomers --- tests/test_cli.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_cli.py b/tests/test_cli.py index 31fdb020..e53c0f41 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -32,7 +32,7 @@ def test_quickstart(tmp_path: Path, make_app): app = make_app(srcdir=app_srcdir, buildername="html") app.build() assert app._warning.getvalue().strip() == "" - assert (path / "_build/html/index.html").exists() + assert (project_path / "_build/html/index.html").exists() def test_md_to_nb(tmp_path: Path): From cc5b8657e9c27b350144d2fcf0682b228b770be3 Mon Sep 17 00:00:00 2001 From: Angus Hollands Date: Tue, 26 Sep 2023 17:10:18 +0100 Subject: [PATCH 12/12] test: use utf-8 --- tests/conftest.py | 4 +++- tests/test_cli.py | 2 +- tests/test_codecell_file.py | 14 ++++++++++---- tests/test_eval.py | 2 +- tests/test_execute.py | 11 +++++++---- tests/test_glue.py | 2 +- tests/test_parser.py | 4 ++-- tests/test_render_outputs.py | 24 ++++++++++++------------ tests/test_text_based.py | 8 ++++---- 9 files changed, 41 insertions(+), 30 deletions(-) diff --git a/tests/conftest.py b/tests/conftest.py index 7c61f19d..74dd2371 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -189,7 +189,9 @@ def sphinx_run(sphinx_params, make_app, tmp_path): nb_path = TEST_FILE_DIR.joinpath(nb_file) assert nb_path.exists(), nb_path (srcdir / nb_file).parent.mkdir(exist_ok=True) - (srcdir / nb_file).write_text(nb_path.read_text(encoding="utf8")) + (srcdir / nb_file).write_text( + nb_path.read_text(encoding="utf-8"), encoding="utf-8" + ) nocolor() diff --git a/tests/test_cli.py b/tests/test_cli.py index e53c0f41..2153a650 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -49,7 +49,7 @@ def test_md_to_nb(tmp_path: Path): +++ next cell """, - "utf8", + "utf-8", ) md_to_nb([str(path)]) assert path.exists() diff --git a/tests/test_codecell_file.py b/tests/test_codecell_file.py index 508b703e..1af9ce8f 100644 --- a/tests/test_codecell_file.py +++ b/tests/test_codecell_file.py @@ -31,11 +31,14 @@ def test_codecell_file(sphinx_run, file_regression, check_nbs, get_test_path): } try: file_regression.check( - sphinx_run.get_nb(), check_fn=check_nbs, extension=".ipynb", encoding="utf8" + sphinx_run.get_nb(), + check_fn=check_nbs, + extension=".ipynb", + encoding="utf-8", ) finally: file_regression.check( - sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf8" + sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf-8" ) @@ -73,9 +76,12 @@ def test_codecell_file_warnings(sphinx_run, file_regression, check_nbs, get_test } try: file_regression.check( - sphinx_run.get_nb(), check_fn=check_nbs, extension=".ipynb", encoding="utf8" + sphinx_run.get_nb(), + check_fn=check_nbs, + extension=".ipynb", + encoding="utf-8", ) finally: file_regression.check( - sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf8" + sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf-8" ) diff --git a/tests/test_eval.py b/tests/test_eval.py index 1ed3c97c..3a87eab1 100644 --- a/tests/test_eval.py +++ b/tests/test_eval.py @@ -12,5 +12,5 @@ def test_sphinx(sphinx_run, clean_doctree, file_regression): doctree = clean_doctree(sphinx_run.get_resolved_doctree("with_eval")) file_regression.check( doctree.pformat(), - encoding="utf8", + encoding="utf-8", ) diff --git a/tests/test_execute.py b/tests/test_execute.py index 80704ac8..f39d1df0 100644 --- a/tests/test_execute.py +++ b/tests/test_execute.py @@ -12,7 +12,10 @@ def regress_nb_doc(file_regression, sphinx_run, check_nbs): try: file_regression.check( - sphinx_run.get_nb(), check_fn=check_nbs, extension=".ipynb", encoding="utf8" + sphinx_run.get_nb(), + check_fn=check_nbs, + extension=".ipynb", + encoding="utf-8", ) finally: doctree_string = sphinx_run.get_doctree().pformat() @@ -31,7 +34,7 @@ def regress_nb_doc(file_regression, sphinx_run, check_nbs): doctree_string = doctree_string.replace( Path(sphinx_run.app.srcdir).as_posix() + "/", "" ) - file_regression.check(doctree_string, extension=".xml", encoding="utf8") + file_regression.check(doctree_string, extension=".xml", encoding="utf-8") @pytest.mark.sphinx_params("basic_unrun.ipynb", conf={"nb_execution_mode": "auto"}) @@ -112,7 +115,7 @@ def test_exclude_path(sphinx_run, file_regression): assert not NbMetadataCollector.new_exec_data(sphinx_run.env) assert "Executing" not in sphinx_run.status(), sphinx_run.status() file_regression.check( - sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf8" + sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf-8" ) @@ -317,7 +320,7 @@ def test_nb_exec_table(sphinx_run, file_regression): # print(sphinx_run.status()) assert not sphinx_run.warnings() file_regression.check( - sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf8" + sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf-8" ) # print(sphinx_run.get_html()) rows = sphinx_run.get_html().select("table.docutils tr") diff --git a/tests/test_glue.py b/tests/test_glue.py index 22658e15..119e0b69 100644 --- a/tests/test_glue.py +++ b/tests/test_glue.py @@ -112,5 +112,5 @@ def test_parser(sphinx_run, clean_doctree, file_regression): doctree = clean_doctree(sphinx_run.get_resolved_doctree("with_glue")) file_regression.check( doctree.pformat(), - encoding="utf8", + encoding="utf-8", ) diff --git a/tests/test_parser.py b/tests/test_parser.py index 9e0186a0..37f510b8 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -24,7 +24,7 @@ def test_basic_run(sphinx_run, file_regression): "name": "python3", } file_regression.check( - sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf8" + sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf-8" ) filenames = { @@ -67,7 +67,7 @@ def test_complex_outputs(sphinx_run, file_regression): doctree_string = doctree_string.replace( Path(sphinx_run.app.srcdir).as_posix() + "/", "" ) - file_regression.check(doctree_string, extension=".xml", encoding="utf8") + file_regression.check(doctree_string, extension=".xml", encoding="utf-8") filenames = { p.name.replace(".jpeg", ".jpg") diff --git a/tests/test_render_outputs.py b/tests/test_render_outputs.py index 5cb72f1a..29a3be0c 100644 --- a/tests/test_render_outputs.py +++ b/tests/test_render_outputs.py @@ -24,7 +24,7 @@ def test_basic_run(sphinx_run, file_regression): sphinx_run.build() assert sphinx_run.warnings() == "" doctree = sphinx_run.get_resolved_doctree("basic_run") - file_regression.check(doctree.pformat(), extension=".xml", encoding="utf8") + file_regression.check(doctree.pformat(), extension=".xml", encoding="utf-8") @pytest.mark.sphinx_params("file_level_config.md") @@ -32,7 +32,7 @@ def test_file_level_config_md(sphinx_run, file_regression): sphinx_run.build() assert sphinx_run.warnings() == "" doctree = sphinx_run.get_resolved_doctree("file_level_config") - file_regression.check(doctree.pformat(), extension=".xml", encoding="utf8") + file_regression.check(doctree.pformat(), extension=".xml", encoding="utf-8") @pytest.mark.sphinx_params("file_level_config.ipynb") @@ -40,7 +40,7 @@ def test_file_level_config_ipynb(sphinx_run, file_regression): sphinx_run.build() assert sphinx_run.warnings() == "" doctree = sphinx_run.get_resolved_doctree("file_level_config") - file_regression.check(doctree.pformat(), extension=".xml", encoding="utf8") + file_regression.check(doctree.pformat(), extension=".xml", encoding="utf-8") @pytest.mark.sphinx_params("complex_outputs.ipynb", conf={"nb_execution_mode": "off"}) @@ -49,7 +49,7 @@ def test_complex_outputs(sphinx_run, clean_doctree, file_regression): assert sphinx_run.warnings() == "" doctree = clean_doctree(sphinx_run.get_resolved_doctree("complex_outputs")) file_regression.check( - doctree.pformat().replace(".jpeg", ".jpg"), extension=".xml", encoding="utf8" + doctree.pformat().replace(".jpeg", ".jpg"), extension=".xml", encoding="utf-8" ) @@ -63,7 +63,7 @@ def test_complex_outputs_latex(sphinx_run, clean_doctree, file_regression): assert sphinx_run.warnings() == "" doctree = clean_doctree(sphinx_run.get_resolved_doctree("complex_outputs")) file_regression.check( - doctree.pformat().replace(".jpeg", ".jpg"), extension=".xml", encoding="utf8" + doctree.pformat().replace(".jpeg", ".jpg"), extension=".xml", encoding="utf-8" ) @@ -76,7 +76,7 @@ def test_stderr_remove(sphinx_run, file_regression): sphinx_run.build() assert sphinx_run.warnings() == "" doctree = sphinx_run.get_resolved_doctree("basic_stderr") - file_regression.check(doctree.pformat(), extension=".xml", encoding="utf8") + file_regression.check(doctree.pformat(), extension=".xml", encoding="utf-8") @pytest.mark.sphinx_params("basic_stderr.ipynb", conf={"nb_execution_mode": "off"}) @@ -87,7 +87,7 @@ def test_stderr_tag(sphinx_run, file_regression): sphinx_run.build() assert sphinx_run.warnings() == "" doctree = sphinx_run.get_resolved_doctree("basic_stderr") - file_regression.check(doctree.pformat(), extension=".xml", encoding="utf8") + file_regression.check(doctree.pformat(), extension=".xml", encoding="utf-8") @pytest.mark.sphinx_params( @@ -99,7 +99,7 @@ def test_merge_streams(sphinx_run, file_regression): sphinx_run.build() assert sphinx_run.warnings() == "" doctree = sphinx_run.get_resolved_doctree("merge_streams") - file_regression.check(doctree.pformat(), extension=".xml", encoding="utf8") + file_regression.check(doctree.pformat(), extension=".xml", encoding="utf-8") @pytest.mark.sphinx_params( @@ -112,7 +112,7 @@ def test_metadata_image(sphinx_run, clean_doctree, file_regression): assert sphinx_run.warnings() == "" doctree = clean_doctree(sphinx_run.get_resolved_doctree("metadata_image")) file_regression.check( - doctree.pformat().replace(".jpeg", ".jpg"), extension=".xml", encoding="utf8" + doctree.pformat().replace(".jpeg", ".jpg"), extension=".xml", encoding="utf-8" ) @@ -132,7 +132,7 @@ def test_metadata_figure(sphinx_run, clean_doctree, file_regression): '
', ) file_regression.check( - doctree_string.replace(".jpeg", ".jpg"), extension=".xml", encoding="utf8" + doctree_string.replace(".jpeg", ".jpg"), extension=".xml", encoding="utf-8" ) @@ -143,7 +143,7 @@ def test_unknown_mimetype(sphinx_run, file_regression): warning = "skipping unknown output mime type: unknown [mystnb.unknown_mime_type]" assert warning in sphinx_run.warnings() doctree = sphinx_run.get_resolved_doctree("unknown_mimetype") - file_regression.check(doctree.pformat(), extension=".xml", encoding="utf8") + file_regression.check(doctree.pformat(), extension=".xml", encoding="utf-8") @pytest.mark.sphinx_params("hide_cell_content.ipynb", conf={"nb_execution_mode": "off"}) @@ -152,4 +152,4 @@ def test_hide_cell_content(sphinx_run, file_regression): sphinx_run.build() assert sphinx_run.warnings() == "" doctree = sphinx_run.get_resolved_doctree("hide_cell_content") - file_regression.check(doctree.pformat(), extension=".xml", encoding="utf8") + file_regression.check(doctree.pformat(), extension=".xml", encoding="utf-8") diff --git a/tests/test_text_based.py b/tests/test_text_based.py index 53b3c002..5140de47 100644 --- a/tests/test_text_based.py +++ b/tests/test_text_based.py @@ -27,10 +27,10 @@ def test_basic_run(sphinx_run, file_regression, check_nbs): "name": "python3", } file_regression.check( - sphinx_run.get_nb(), check_fn=check_nbs, extension=".ipynb", encoding="utf8" + sphinx_run.get_nb(), check_fn=check_nbs, extension=".ipynb", encoding="utf-8" ) file_regression.check( - sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf8" + sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf-8" ) @@ -52,10 +52,10 @@ def test_basic_run_exec_off(sphinx_run, file_regression, check_nbs): assert sphinx_run.env.metadata["basic_unrun"]["author"] == "Chris" file_regression.check( - sphinx_run.get_nb(), check_fn=check_nbs, extension=".ipynb", encoding="utf8" + sphinx_run.get_nb(), check_fn=check_nbs, extension=".ipynb", encoding="utf-8" ) file_regression.check( - sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf8" + sphinx_run.get_doctree().pformat(), extension=".xml", encoding="utf-8" )