from pathlib import Path from pytest import raises from rougail_tests.utils import get_rougail_config, get_values_for_config ######################### from rougail.output_environment import RougailOutputEnvironment as RougailOutput ######################### from rougail.error import ExtensionError from rougail import Rougail def _test_error(test_dir): rougailconfig = get_rougail_config(test_dir, False) if not rougailconfig: return # rougailconfig['tiramisu_cache'] = "cache.py" ################################## rougailconfig['step.output'] = 'environment' rougailconfig["environment.output.path_is_variable_name"] = False rougailconfig["environment.output.multi_in_array"] = False ################################## rougail = Rougail(rougailconfig) config = rougail.run() ################################## get_values_for_config(config, level="mandatory") ################################## with raises(ExtensionError): RougailOutput(config, rougailconfig=rougailconfig).run() def test_error_duplicate(): _test_error(Path("tests/errors/duplicate")) def test_error_multi_separator(): _test_error(Path("tests/errors/multi_separator")) def test_error_multi_separator2(): _test_error(Path("tests/errors/multi_separator2")) def test_error_submulti_separator(): _test_error(Path("tests/errors/submulti_separator"))