def test_that_shell_filter_is_run_from_config_directory(test_config_directory): shell_filter_template = Path(__file__).parents[1] \ / 'templates' / 'shell_filter_working_directory.template' shell_filter_template_target = Path( '/tmp/astrality/shell_filter_working_directory.template', ) modules = { 'A': { 'on_startup': { 'compile': [ { 'content': str(shell_filter_template), 'target': str(shell_filter_template_target), }, ], }, }, } module_manager = ModuleManager(modules=modules) module_manager.execute(action='compile', block='on_startup') with open(shell_filter_template_target) as compiled: assert compiled.read() == str(test_config_directory) os.remove(shell_filter_template_target)
def test_compilation_of_template( self, valid_module_section, simple_application_config, module, conf, caplog, ): valid_module_section[ 'test_module' ][ 'event_listener' ][ 'type' ] = 'solar' compiled_template_content = 'some text\n' + os.environ['USER'] \ + '\nFuraMono Nerd Font' module_manager = ModuleManager( config=simple_application_config, modules=valid_module_section, context=Context({ 'fonts': {1: 'FuraMono Nerd Font'}, }), ) directory = module_manager.config_directory caplog.clear() module_manager.execute(action='compile', block='on_startup') template_file = str( (directory / '../templates/test_template.conf').resolve(), ) compiled_template = str( list( module_manager.modules['test_module'] .performed_compilations()[Path(template_file)], )[0], ) with open('/tmp/compiled_result', 'r') as file: compiled_result = file.read() assert compiled_template_content == compiled_result assert caplog.record_tuples == [ ( 'astrality.compiler', logging.INFO, f'[Compiling] Template: "{template_file}" ' f'-> Target: "{compiled_template}"', ), ]