def test_attribute_folders_L2(self): self.analyzer.attribute_folders(self.L2, 2) folders = self.analyzer.L_folders self.assertEqual(len(folders[GCA.key_folder(['a'])]), 5) self.assertEqual(len(folders[GCA.key_folder(['b'])]), 2) self.assertEqual(len(folders[GCA.key_folder(['d'])]), 3) self.assertEqual(len(folders[GCA.key_folder(['e'])]), 2) self.assertEqual(len(folders[GCA.key_folder(['f'])]), 4) self.assertEqual(len(folders[GCA.key_folder(['g'])]), 2) self.assertEqual(len(folders[GCA.key_folder(['h'])]), 1) self.assertNotIn(GCA.key_folder(['c']), folders)
def test_EOB_L2(self): self.analyzer.attribute_folders(self.L2, 2) self.analyzer.extend_merge(self.L2, 2) folders = self.analyzer.L_folders self.assertEqual(len(self.analyzer.L_folders), 5) self.assertEqual(len(folders[GCA.key_folder(['d'])]), 2) self.assertEqual(len(folders[GCA.key_folder(['a'])]), 4) self.assertEqual(len(folders[GCA.key_folder(['g'])]), 3) self.assertEqual(len(folders[GCA.key_folder(['f'])]), 3) self.assertEqual(len(folders[GCA.key_folder(['h'])]), 1) folder = folders[GCA.key_folder(['d'])] self.assertEqual(folder[0].closure, frozenset(('a', 'd', 'f', 'g', 'h', 'e', 'g'))) self.assertEqual(folder[0].generators, [['d', 'g'], ['d', 'e']]) self.assertEqual(folder[0].transactions, set([3])) self.assertEqual(folder[0].support, 1) self.assertEqual(folder[1].closure, frozenset( ('a', 'd', 'f', 'h', 'c'))) self.assertEqual(folder[1].generators, [['d', 'c']]) self.assertEqual(folder[1].transactions, set([2])) self.assertEqual(folder[1].support, 1) folder = folders[GCA.key_folder(['a'])] self.assertEqual(folder[0].closure, frozenset(('a', 'h', 'f'))) self.assertEqual(folder[0].generators, [['a', 'f']]) self.assertEqual(folder[0].transactions, set([2, 3])) self.assertEqual(folder[0].support, 2) self.assertEqual(folder[1].closure, frozenset(('a', 'h', 'e', 'g'))) self.assertEqual(folder[1].generators, [['a', 'g'], ['a', 'e']]) self.assertEqual(folder[1].transactions, set([1, 3])) self.assertEqual(folder[1].support, 2) self.assertEqual(folder[2].closure, frozenset(('a', 'h', 'b', 'c', 'e', 'g'))) self.assertEqual(folder[2].generators, [['a', 'b']]) self.assertEqual(folder[2].transactions, set([1])) self.assertEqual(folder[2].support, 1) self.assertEqual(folder[3].closure, frozenset(('a', 'h', 'c'))) self.assertEqual(folder[3].generators, [['a', 'c']]) self.assertEqual(folder[3].transactions, set([1, 2])) self.assertEqual(folder[3].support, 2) folder = folders[GCA.key_folder(['g'])] self.assertEqual(folder[0].closure, frozenset( ('e', 'g', 'h', 'b', 'c'))) self.assertEqual(folder[0].generators, [['g', 'b'], ['g', 'c'], ['b', 'h']]) self.assertEqual(folder[0].transactions, set([1, 4])) self.assertEqual(folder[0].support, 2) self.assertEqual(folder[1].closure, frozenset(('b', 'c', 'e'))) self.assertEqual(folder[1].generators, [['b', 'e'], ['e', 'c']]) self.assertEqual(folder[1].transactions, set([1, 4, 5])) self.assertEqual(folder[1].support, 3) self.assertEqual(folder[2].closure, frozenset(('e', 'h'))) self.assertEqual(folder[2].generators, [['e', 'h']]) self.assertEqual(folder[2].transactions, set([1, 3, 4])) self.assertEqual(folder[2].support, 3) folder = folders[GCA.key_folder(['f'])] self.assertEqual(folder[0].closure, frozenset(('f', 'h', 'e', 'g'))) self.assertEqual(folder[0].generators, [['f', 'g'], ['f', 'e']]) self.assertEqual(folder[0].transactions, set([3, 4])) self.assertEqual(folder[0].support, 2) self.assertEqual(folder[1].closure, frozenset(('f', 'h', 'b', 'c', 'e', 'g'))) self.assertEqual(folder[1].generators, [['f', 'b']]) self.assertEqual(folder[1].transactions, set([4])) self.assertEqual(folder[1].support, 1) self.assertEqual(folder[2].closure, frozenset(('f', 'h', 'c'))) self.assertEqual(folder[2].generators, [['f', 'c']]) self.assertEqual(folder[2].transactions, set([2, 4])) self.assertEqual(folder[2].support, 2)