def test_source_model_calling_a_filter(self):
        sm_filter = SourceModelCatalogFilter()
        sm_filter.filter_eqs = Mock()
        sm_filter.filter_eqs.return_value = []

        catalog_filter = CatalogFilter(sm_filter)

        gen = catalog_filter.filter_eqs([dict(a=1), dict(b=2)], [])
        self.assertEqual((dict(a=1), []), gen.next())
        self.assertEqual((dict(b=2), []), gen.next())

        self.assertEqual(dict(a=1), sm_filter.filter_eqs.call_args_list[0][0][0])
        self.assertEqual(dict(b=2), sm_filter.filter_eqs.call_args_list[1][0][0])
Example #2
0
    def test_source_model_calling_a_filter(self):
        sm_filter = SourceModelCatalogFilter()
        sm_filter.filter_eqs = Mock()
        sm_filter.filter_eqs.return_value = []

        catalog_filter = CatalogFilter(sm_filter)

        gen = catalog_filter.filter_eqs([dict(a=1), dict(b=2)], [])
        self.assertEqual((dict(a=1), []), gen.next())
        self.assertEqual((dict(b=2), []), gen.next())

        self.assertEqual(dict(a=1),
                         sm_filter.filter_eqs.call_args_list[0][0][0])
        self.assertEqual(dict(b=2),
                         sm_filter.filter_eqs.call_args_list[1][0][0])
Example #3
0
from mtoolkit.catalog_filter import CatalogFilter, SourceModelCatalogFilter

if __name__ == '__main__':

    CMD_LINE_ARGS = cmd_line()

    if CMD_LINE_ARGS:

        INPUT_CONFIG_FILENAME = CMD_LINE_ARGS.input_file[0]

        LOG_LEVEL = logging.DEBUG if CMD_LINE_ARGS.detailed else logging.INFO

        build_logger(LOG_LEVEL)

        CONTEXT = Context(INPUT_CONFIG_FILENAME)

        PIPELINE_PREPROCESSING = PreprocessingBuilder().build(CONTEXT.config)

        PIPELINE_PROCESSING = ProcessingBuilder().build(CONTEXT.config)

        if CONTEXT.config['source_model_file']:
            CATALOG_FILTER = CatalogFilter(SourceModelCatalogFilter())
        else:
            CATALOG_FILTER = CatalogFilter()

        WORKFLOW = Workflow(PIPELINE_PREPROCESSING, PIPELINE_PROCESSING)
        WORKFLOW.start(CONTEXT, CATALOG_FILTER)

        WRITER = AreaSourceWriter(CONTEXT.config['result_file'])
        WRITER.serialize(CONTEXT.sm_definitions)
 def test_empty_source_model(self):
     catalog_filter = CatalogFilter(None)
     self.assertRaises(StopIteration, catalog_filter.filter_eqs([], []).next)
Example #5
0
 def test_empty_source_model(self):
     catalog_filter = CatalogFilter(None)
     self.assertRaises(StopIteration,
                       catalog_filter.filter_eqs([], []).next)
Example #6
0
def run(workflow, context):
    """Run the workflow with source model filtering"""

    return workflow.start(context, CatalogFilter(SourceModelCatalogFilter()))