def test_singleton(self): by_task, by_res = lp.find_connected_components(self.ts) self.assertEqual(len(by_res), 0) self.assertEqual(len(by_task), len(self.ts)) for t in self.ts: self.assertEqual(len(by_task[t]), 1) self.assertTrue(t in by_task[t])
def test_singleton2(self): for i, t in enumerate(self.ts): t.resmodel[i].add_request(1) by_task, by_res = lp.find_connected_components(self.ts) self.assertEqual(len(by_res), 4) self.assertEqual(len(by_task), len(self.ts)) for t in self.ts: self.assertEqual(len(by_task[t]), 1) self.assertTrue(t in by_task[t])
def test_merge2(self): self.ts[0].resmodel[0].add_request(1) self.ts[0].resmodel[1].add_request(1) self.ts[1].resmodel[1].add_request(1) self.ts[2].resmodel[2].add_request(1) self.ts[2].resmodel[3].add_request(1) self.ts[3].resmodel[3].add_request(1) by_task, by_res = lp.find_connected_components(self.ts) self.assertEqual(len(by_res), 4) self.assertIs(by_res[0], by_res[1]) self.assertNotEqual(by_res[1], by_res[2]) self.assertIs(by_res[2], by_res[3]) self.assertNotEqual(by_res[3], by_res[0]) self.assertEqual(len(by_task), len(self.ts)) for t in self.ts: self.assertEqual(len(by_task[t]), 2) self.assertIn(t, by_task[t])