diff --git a/unittests/test_converters.py b/unittests/test_converters.py index 248c5e3bfa24a0773924ad35db0f41fe9acfed0f..67c93c74e4011bc402817b79a660a8c06ba38800 100644 --- a/unittests/test_converters.py +++ b/unittests/test_converters.py @@ -45,7 +45,8 @@ from caoscrawler.converters import (Converter, ConverterValidationError, handle_value, replace_variables) from caoscrawler.crawl import Crawler from caoscrawler.scanner import (_load_definition_from_yaml_dict, - create_converter_registry, load_definition) + create_converter_registry, load_definition, + create_transformer_registry) from caoscrawler.stores import GeneralStore from caoscrawler.structure_elements import (BooleanElement, DictElement, Directory, File, FloatElement, @@ -416,6 +417,22 @@ def test_apply_replace(converter_registry): conv.apply_transformers(values, transformer_functions) assert values['b'] == "16:45" +def test_apply_replace_from_def(converter_registry): + cfood_def = {"type": 'ListElement', "match_name": ".*", + 'transform': {'test': {'in': '$a', 'out': '$b', 'functions': [{ + 'replace': {'insert': ':', "remove": "_"}}]}}} + values = GeneralStore() + values["a"] = "16_45" + + transformer_functions = create_transformer_registry({}) + # transformer_functions = {"replace": replace} + + conv = ListElementConverter(definition=cfood_def, name='test', + converter_registry=converter_registry) + + conv.apply_transformers(values, transformer_functions) + assert values['b'] == "16:45" + def test_filter_children_of_directory(converter_registry, capsys): """Verify that children (i.e., files) in a directory are filtered or sorted correctly. """