def test_get_analyzers_for_resource_with_skip_list(self): lib_resource = Resource(os.path.join(os.getcwd(), 'lib', 'jquery.js')) src_resource = Resource(os.path.join(os.getcwd(), 'src', 'file.js')) conf = Configuration() analyzer = Analyzer() conf.add_analyzer_for_file_type(analyzer, 'javascript', ['lib/*']) self.assertIsNone(conf.get_analyzers_for_resource(lib_resource)) self.assertEqual([analyzer], conf.get_analyzers_for_resource(src_resource))
def test_can_add_analyzer_for_filetype(self): conf = Configuration() analyzer = Analyzer() conf.add_analyzer_for_file_type(analyzer, 'javascript') resource = Resource('file.js') analyzers = conf.get_analyzers_for_resource(resource) self.assertListEqual([analyzer], analyzers)
def test_returns_non_when_asking_for_analyzers_for_an_unknown_file_type(self): conf = Configuration() analyzer = Analyzer() conf.add_analyzer_for_file_type(analyzer, 'javascript') resource = Resource('file.foo') analyzers = conf.get_analyzers_for_resource(resource) self.assertIsNone(analyzers)
def test_returns_non_when_asking_for_analyzers_for_an_unknown_file_type( self): conf = Configuration() analyzer = Analyzer() conf.add_analyzer_for_file_type(analyzer, 'javascript') resource = Resource('file.foo') analyzers = conf.get_analyzers_for_resource(resource) self.assertIsNone(analyzers)
def test_can_load_analyzers_from_config_file(self): config_file_path = os.path.join(self.test_env_dir, 'blend.config') create_file_with_content( config_file_path, """{ "analyzers": { "javascript": [ { "name": "blend.SizeAnalyzer", "skip_list": [ "bin" ] } ] } }""") conf = Configuration(config_file_path) resource = Resource('file.js') actual_analyzers = conf.get_analyzers_for_resource(resource) self.assertIsNotNone(actual_analyzers) self.assertEqual(1, len(actual_analyzers)) self.assertIsInstance(actual_analyzers[0], SizeAnalyzer) self.assertIsNotNone(conf.analyzer_skip_lists)
def test_can_load_analyzers_from_config_file(self): config_file_path = os.path.join(self.test_env_dir, 'blend.config') create_file_with_content(config_file_path, """{ "analyzers": { "javascript": [ { "name": "blend.SizeAnalyzer", "skip_list": [ "bin" ] } ] } }""") conf = Configuration(config_file_path) resource = Resource('file.js') actual_analyzers = conf.get_analyzers_for_resource(resource) self.assertIsNotNone(actual_analyzers) self.assertEqual(1, len(actual_analyzers)) self.assertIsInstance(actual_analyzers[0], SizeAnalyzer) self.assertIsNotNone(conf.analyzer_skip_lists)