def setUp(self): self.group1 = Group() self.group2 = Group(['13bk','13bl', '13yw']) self.group3 = Group(['13bk','13bl', '13yw', '13rd'])
class TestGroup(TestCase): def setUp(self): self.group1 = Group() self.group2 = Group(['13bk','13bl', '13yw']) self.group3 = Group(['13bk','13bl', '13yw', '13rd']) def test_equality(self): self.group2.addTile('13rd') self.assertEqual(self.group2, self.group3) self.assertNotEqual(self.group1,self.group2) self.assertFalse(self.group2 == 0) r = Run(['1bl', '2bl','3bl']) self.assertFalse(r == self.group2) def test_clone(self): g = self.group2.clone() g.addTile('13rd') self.assertEqual(len(self.group2),3) def test_get_tiles(self): self.assertEqual(self.group1.getTiles(), None) self.assertEqual(set(self.group2.getTiles()), set(['13bk','13bl', '13yw'])) def test_length(self): self.assertEqual(len(self.group1), 0) self.assertEqual(len(self.group2), 3) self.assertEqual(len(self.group3), 4) def test_add(self): self.group2.addTile('13rd') self.assertEqual(len(self.group2), 4) def test_bad_add(self): with self.assertRaises(ValueError): self.group2.addTile('13bk') with self.assertRaises(ValueError): self.group2.addTile('12rd') with self.assertRaises(ValueError): self.group1.addTile(['12rd', '12yw']) with self.assertRaises(ValueError): self.group1.addTile(['12rd', '12rd', '12rd']) with self.assertRaises(TypeError): self.group2.addTile(0) def test_validAdds(self): self.assertEqual(self.group1.validAdds(), None) self.assertEqual(self.group2.validAdds(), ["13rd"]) self.assertEqual(self.group3.validAdds(), [])