From 13866b5742840e65d889bb7fcee0cf5c790d6d00 Mon Sep 17 00:00:00 2001 From: egberts Date: Mon, 22 Jul 2024 18:06:21 -0500 Subject: [PATCH] test_pelican, CWD-independence --- pelican/__init__.py | 14 +++++++++----- pelican/tests/test_pelican.py | 3 ++- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/pelican/__init__.py b/pelican/__init__.py index 96849bae..2e2b735d 100644 --- a/pelican/__init__.py +++ b/pelican/__init__.py @@ -547,12 +547,16 @@ def get_config(args): def get_instance(args): - config_file = args.settings - if config_file is None and os.path.isfile(DEFAULT_CONFIG_NAME): - config_file = DEFAULT_CONFIG_NAME - args.settings = DEFAULT_CONFIG_NAME + config_settings_file = args.settings + if config_settings_file is None: + if os.path.isfile(DEFAULT_CONFIG_NAME): + config_settings_file = DEFAULT_CONFIG_NAME + args.settings = DEFAULT_CONFIG_NAME + else: + config_settings_file = "pelicanconf.py" + args.settings = "pelicanconf.py" - settings = read_settings(config_file, override=get_config(args)) + settings = read_settings(config_settings_file, override=get_config(args)) cls = settings["PELICAN_CLASS"] if isinstance(cls, str): diff --git a/pelican/tests/test_pelican.py b/pelican/tests/test_pelican.py index a43afa3e..39f6fef6 100644 --- a/pelican/tests/test_pelican.py +++ b/pelican/tests/test_pelican.py @@ -295,13 +295,14 @@ class TestPelican(LoggedTestCase): def test_main_on_content(self): """Invoke main on simple_content directory.""" + content_subdir = "pelican/tests/simple_content" out, err = io.StringIO(), io.StringIO() with contextlib.redirect_stdout(out), contextlib.redirect_stderr(err): with TemporaryDirectory() as temp_dir: # Don't highlight anything. # See https://rich.readthedocs.io/en/stable/highlighting.html with patch("pelican.console", new=Console(highlight=False)): - main(["-o", temp_dir, "pelican/tests/simple_content"]) + main(["-o", temp_dir, content_subdir]) self.assertIn("Processed 1 article", out.getvalue()) self.assertEqual("", err.getvalue())