def test_categories_dict(self, cat, key_dict): categorizer = Categorizer(cat) expected_supers = ['Sensors', 'Protocols', 'Walruses', categorizer.default_category] expected_subs = ['Power', 'Altitude', 'Tusks'] expected_subsubs = ['A'] results = categorizer.categorize(key_dict) for res_super in results.values(): # Each super category should have categories and keys assert 'categories' in res_super assert 'keys' in res_super for res_sub in res_super['categories'].values(): # Each sub should have categories and keys assert 'categories' in res_sub assert 'keys' in res_sub # Sub cats should be as expected for sub_cat in res_sub['categories']: assert sub_cat in expected_subsubs for subsub_cat in res_sub['categories'].values(): assert 'keys' in subsub_cat assert subsub_cat['keys'] is not None for subsub_cat in res_sub['categories']: assert subsub_cat in expected_subsubs for super_cat in results: assert super_cat in expected_supers for expected_super in expected_supers: assert expected_super in results assert 'Sensors' in results assert 'Power' in results['Sensors']['categories'] assert 'A' in results['Sensors']['categories']['Power']['categories']
def test_categories_dict(self, cat, key_dict): categorizer = Categorizer(cat) expected_supers = [ 'Sensors', 'Protocols', 'Walruses', categorizer.default_category ] expected_subs = ['Power', 'Altitude', 'Tusks'] expected_subsubs = ['A'] results = categorizer.categorize(key_dict) for res_super in results.values(): # Each super category should have categories and keys assert 'categories' in res_super assert 'keys' in res_super for res_sub in res_super['categories'].values(): # Each sub should have categories and keys assert 'categories' in res_sub assert 'keys' in res_sub # Sub cats should be as expected for sub_cat in res_sub['categories']: assert sub_cat in expected_subsubs for subsub_cat in res_sub['categories'].values(): assert 'keys' in subsub_cat assert subsub_cat['keys'] is not None for subsub_cat in res_sub['categories']: assert subsub_cat in expected_subsubs for super_cat in results: assert super_cat in expected_supers for expected_super in expected_supers: assert expected_super in results assert 'Sensors' in results assert 'Power' in results['Sensors']['categories'] assert 'A' in results['Sensors']['categories']['Power']['categories']
def test_categories_list_00(self, cat): categorizer = Categorizer(cat) expected = ['Power', 'Sensors', 'Protocols', 'Walruses', 'Tusks'] results = categorizer.get_categories_list() assert len(results) == len(expected) for cat in results: assert cat in expected for exp in expected: assert exp in results
def test_categorizer_init_00(self, cat): categorizer = Categorizer(cat) assert len(categorizer.cat_defs) == len(cat) for defin in categorizer.cat_defs: assert defin['super'] is not None if 'sub' in defin: assert defin['sub'] is not None
def _get_categories(self, key_dict): categorizer = Categorizer() categories = categorizer.categorize(key_dict) return categories
def test_defs_path(self, cat): categorizer = Categorizer(cat) results = categorizer._get_defs_path() assert(results is not None)
def test_defs_path(self, cat): categorizer = Categorizer(cat) results = categorizer._get_defs_path() assert (results is not None)
def test_validate_defs_04(self): with pytest.raises(ValueError): Categorizer([{'super': 'a', 'sub': ['a', 'b']}])
def test_validate_defs_03(self): with pytest.raises(ValueError): Categorizer([{'sub': ['a']}])
def test_validate_defs_01(self): with pytest.raises(ValueError): Categorizer([{'badkey': None, 'super': ['a']}])
def test_validate_defs_00(self): Categorizer([{'super': ['a']}])