Beispiel #1
0
def launchPreprocessing(tests):
    """Lance la serie des pretraitements tels que definis dans la stucture `tests'.
    On charge et execute en série les filtres, le nom du fichier résultat est dans
    le champ `output' de partie preprocessing de la structure `tests'."""
    # On prend chaque instance de chaque test.
    print '* Lancement des pretraitements.'
    for test in tests:
        for instance in test['execs']:
            preprocessing = instance['preprocessing']
            # Les fichiers resultats intermédiaires sont : source-Nb-module.svg
            source_filename = test['source']
            input_file = source_filename
            preprocessing['filters'].insert(0, {'name' : 'identity',
                                                'filter_id' : 0,
                                                'parameters' : { 'param' : [] }})
            # Pour chaque filtre, on regle les fichiers
            # d'entrée/sortie, on charge le module python et on lance.
            for prefilter in preprocessing['filters']:
                output_filename = '%s-%s-%s-%s.svg' % (test['test_id'],
                                                       instance['instance_id'],
                                                       prefilter['filter_id'],
                                                       prefilter['name'])
                output_file = os.path.join(conf['preprocessing_directory'],
                                           output_filename)

                module = util.importer_module('pretraitement',
                                              prefilter['name'])
                module.go(input_file, output_file, prefilter['parameters'])
                input_file = output_file
            # Le fichier resultat est dans preprocessing['output']
            preprocessing['output'] = output_file
Beispiel #2
0
def launchDiagnostic(tests):
    """Lance les diagnostics. `tests' est la grande structure de
    tests.  Pour chaque comparaison, on lance le module de diagnostic
    défini dans la structure."""
    print '* Lancement des captures.'
    buildComparisons(tests)
    for test in tests:
        for comparison in test['comparisons']:

            diagnostic = test['diagnostic']
            module_nom = diagnostic['name']
            module = util.importer_module('diagnostic', module_nom)
            source_filename = test['source']
            output_prefix = os.path.join(conf['capture_directory'], comparison['comparison_id'] )
            module.go(comparison, output_prefix, diagnostic)
Beispiel #3
0
def launchCapture(tests):
    """Lance les captures. `tests' est la grande structure de tests.
    Le résultat de chaque capture est stocké dans capture['output']"""
    print '* Lancement des captures.'
    for test in tests:
        for instance in test['execs']:
            capture = instance['capture']
            module_nom = capture['name']
            module = util.importer_module('capture', module_nom)
            source_filename = test['source']
            output_filename = '%s-%s-%s' % (test['test_id'],
                                            instance['instance_id'],
                                            capture['name'])
            input_file = instance['preprocessing']['output']
            output_prefix = os.path.join(conf['capture_directory'],
                                         output_filename)
            output_file = module.go(input_file, output_prefix,
                                    capture['parameters'])
            capture['output'] = output_file