mirror of
https://github.com/mkdocs/mkdocs.git
synced 2026-03-27 09:58:31 +07:00
Fix tests that wrote something into the source directory
This commit is contained in:
@@ -227,8 +227,11 @@ class BuildTests(PathAssertionMixin, unittest.TestCase):
|
||||
@mock.patch('mkdocs.utils.write_file')
|
||||
@mock.patch('mkdocs.commands.build._build_template', return_value='some content')
|
||||
@mock.patch('gzip.GzipFile')
|
||||
def test_build_sitemap_template(self, mock_gzip_gzipfile, mock_build_template, mock_write_file):
|
||||
cfg = load_config()
|
||||
@tempdir()
|
||||
def test_build_sitemap_template(
|
||||
self, site_dir, mock_gzip_gzipfile, mock_build_template, mock_write_file
|
||||
):
|
||||
cfg = load_config(site_dir=site_dir)
|
||||
env = cfg['theme'].get_env()
|
||||
build._build_theme_template('sitemap.xml', env, mock.Mock(), cfg, mock.Mock())
|
||||
mock_write_file.assert_called_once()
|
||||
@@ -265,9 +268,10 @@ class BuildTests(PathAssertionMixin, unittest.TestCase):
|
||||
|
||||
# Test build._build_extra_template
|
||||
|
||||
@tempdir()
|
||||
@mock.patch('mkdocs.commands.build.open', mock.mock_open(read_data='template content'))
|
||||
def test_build_extra_template(self):
|
||||
cfg = load_config()
|
||||
def test_build_extra_template(self, site_dir):
|
||||
cfg = load_config(site_dir=site_dir)
|
||||
fs = [
|
||||
File('foo.html', cfg['docs_dir'], cfg['site_dir'], cfg['use_directory_urls']),
|
||||
]
|
||||
|
||||
@@ -11,7 +11,7 @@ from mkdocs.config import base
|
||||
from mkdocs.config import config_options as c
|
||||
from mkdocs.config.base import ValidationError
|
||||
from mkdocs.exceptions import Abort, BuildError, PluginError
|
||||
from mkdocs.tests.base import load_config
|
||||
from mkdocs.tests.base import load_config, tempdir
|
||||
|
||||
|
||||
class _DummyPluginConfig(base.Config):
|
||||
@@ -222,7 +222,8 @@ class TestPluginCollection(unittest.TestCase):
|
||||
with self.assertRaises(KeyError):
|
||||
collection.run_event('unknown', 'page content')
|
||||
|
||||
def test_run_build_error_event(self):
|
||||
@tempdir()
|
||||
def test_run_build_error_event(self, site_dir):
|
||||
build_errors = []
|
||||
|
||||
class PluginRaisingError(plugins.BasePlugin):
|
||||
@@ -251,27 +252,27 @@ class TestPluginCollection(unittest.TestCase):
|
||||
def on_build_error(self, error, **kwargs):
|
||||
build_errors.append(error)
|
||||
|
||||
cfg = load_config()
|
||||
cfg = load_config(site_dir=site_dir)
|
||||
cfg['plugins']['errorplugin'] = PluginRaisingError(error_on='pre_page')
|
||||
with self.assertLogs('mkdocs', level='ERROR'):
|
||||
self.assertRaises(Abort, build.build, cfg)
|
||||
|
||||
cfg = load_config()
|
||||
cfg = load_config(site_dir=site_dir)
|
||||
cfg['plugins']['errorplugin'] = PluginRaisingError(error_on='page_markdown')
|
||||
with self.assertLogs('mkdocs', level='ERROR'):
|
||||
self.assertRaises(Abort, build.build, cfg)
|
||||
|
||||
cfg = load_config()
|
||||
cfg = load_config(site_dir=site_dir)
|
||||
cfg['plugins']['errorplugin'] = PluginRaisingError(error_on='page_content')
|
||||
with self.assertLogs('mkdocs', level='ERROR'):
|
||||
self.assertRaises(Abort, build.build, cfg)
|
||||
|
||||
cfg = load_config()
|
||||
cfg = load_config(site_dir=site_dir)
|
||||
cfg['plugins']['errorplugin'] = PluginRaisingError(error_on='post_page')
|
||||
with self.assertLogs('mkdocs', level='ERROR'):
|
||||
self.assertRaises(ValueError, build.build, cfg)
|
||||
|
||||
cfg = load_config()
|
||||
cfg = load_config(site_dir=site_dir)
|
||||
cfg['plugins']['errorplugin'] = PluginRaisingError(error_on='')
|
||||
build.build(cfg)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user