def test_register_defaults(build_mock, register_directive_mock, tmp_path): # pylint: disable=protected-access type(build_mock).return_value = sentinel.clazz ditaa.register(tmp_path) build_mock.assert_called_once_with(tmp_path, None, 'png', False) register_directive_mock.assert_called_once_with('ditaa-image', sentinel.clazz)
def register(args): generate_dir = Path(args.targetdir).joinpath(BUILD_PATH) plantuml.register(target_dir=generate_dir, base_uri=BUILD_PATH, create_dir=True) ditaa.register(target_dir=generate_dir, base_uri=BUILD_PATH, create_dir=True)
def test_image_directive_run_default_base_uri(ditaa_wrapper_class_mock, integration_output_path): # pylint: disable=redefined-outer-name,unused-argument ditaa.register(integration_output_path, '.') output = integration_output_path.joinpath('sample.html') publish_file(source_path=str(REST_SAMPLE_FILE), destination_path=str(output), writer_name='html5') with output.open(encoding='utf8') as data: soup = BeautifulSoup(data, 'html.parser') images = soup.find_all('img') assert images[0]['src'] == './fake_hash_code.png'
def pelican_init(pelicanobj): target_dir = os.path.join('images', BUILD_PATH) base_uri = '/' + target_dir output_path = Path(pelicanobj.settings['OUTPUT_PATH']) generate_dir = output_path.joinpath(target_dir) logger.info( 'Registered "%s" with working directory "%s" ' 'and a base URL of "%s"', __name__, generate_dir, base_uri) plantuml.register(target_dir=generate_dir, base_uri=base_uri, create_dir=True) ditaa.register(target_dir=generate_dir, base_uri=base_uri, create_dir=True)
def test_image_directive_run_baseline(ditaa_wrapper_class_mock, image_format, integration_output_path): # pylint: disable=redefined-outer-name # arrange ditaa.register(integration_output_path, default_image_format=image_format) output = integration_output_path.joinpath('sample.html') # apply publish_file(source_path=str(REST_SAMPLE_FILE), destination_path=str(output), writer_name='html5') # assert expected_path = integration_output_path \ .joinpath('fake_hash_code').with_suffix('.' + image_format) ditaa_wrapper_class_mock.instantiated_obj_mock \ .write.assert_called_once_with(expected_path) with output.open(encoding='utf8') as data: soup = BeautifulSoup(data, 'html.parser') images = soup.find_all('img') assert len(images) == 1 assert images[0]['alt'] == images[0]['src'] assert Path(images[0]['src']).suffix == '.' + image_format assert str(Path(images[0]['src']).parent) == str(integration_output_path)
def test_register_modified(build_mock, register_directive_mock, tmp_path): type(build_mock).return_value = sentinel.clazz ditaa.register(tmp_path, 'some/base/uri', 'svg', True) build_mock.assert_called_once_with(tmp_path, 'some/base/uri', 'svg', True) register_directive_mock.assert_called_once_with('ditaa-image', sentinel.clazz)