예제 #1
0
    def _test_rename_files(self, input_description, rules_text, expected_result, **options):
        files = [FileReference.from_test_repr(file_repr) for file_repr in input_description]
        rule_set = RuleSet.from_source(rules_text)

        rename_params = {key: value for key, value in options.items() if key != 'overrides'}
        renamed_files = rename_files(files, rule_set, **rename_params)

        if 'overrides' in options:
            # Normalize override specification
            overrides = {
                from_path.replace('/', os.sep): to_path.replace('/', os.sep)
                for from_path, to_path in options['overrides'].items()
            }

            renamed_files = apply_rename_overrides(renamed_files, convert_raw_overrides(overrides, None))

        self.assertEquals(
            tuple(f.test_repr() for f in renamed_files),
            expected_result,
        )
예제 #2
0
파일: BAONQtCore.py 프로젝트: goc9000/baon
 def _recompute_sync_impl(self, renamed_files_before_overrides, overrides):
     self._update(
         status=BAONStatus.AVAILABLE,
         data=apply_rename_overrides(renamed_files_before_overrides, overrides)
     )
     return True