def testRepr(self): self.assertEqual(repr(self.mickey), u'< Animal Mickey (male; Tag: 2) >') mouse = Animal.fromRow('Jerry', '1') self.assertEqual(repr(mouse), u'< Animal Jerry (Tag: 1) >') mouse.merge(Animal.fromRow('Jerry', ' 2')) self.assertEqual(repr(mouse), u'< Animal Jerry (Tags: 1, 2) >')
def testNeq(self): self.assertTrue(self.mickey != Animal.fromRow('Jerry', '2')) self.assertTrue( self.mickey != Animal.fromRow('Mickey', '2', Sex='female')) self.assertFalse(self.mickey != Animal.fromRow('Mickey', '2')) animal = Animal(u'b\xf3br', '1') if sys.version_info < (3, 0): self.assertFalse(animal != 'b\xc3\xb3br') self.assertTrue(animal != 'bobr') self.assertFalse(animal != u'b\xf3br') self.assertTrue(animal != u'b\xc3\xb3br')
def testFromRow(self): jerry = Animal.fromRow('Jerry', '1', None, None) self.checkAttributes(jerry, [('Name', 'Jerry', unicode), ('Tag', {'1'}, frozenset), 'Sex', ('Notes', frozenset(), frozenset)]) self.assertTrue(allInstances(jerry.Tag, unicode)) mickey = Animal.fromRow('Mickey', '2', 'male', 'note') self.checkAttributes(mickey, [('Name', 'Mickey', unicode), ('Tag', {'2'}, frozenset), ('Sex', 'male', unicode), ('Notes', {'note'}, frozenset)]) self.assertTrue(allInstances(mickey.Tag, unicode)) self.assertTrue(allInstances(mickey.Notes, unicode))
def testMerge(self): mouse = Animal.fromRow('Mickey', '1') mouse.merge(self.mickey) self.assertEqual(mouse.Sex, 'male') self.assertEqual(mouse.Notes, {'bla'}) self.assertEqual(mouse.Tag, {'1', '2'}) self.assertIsInstance(mouse.Tag, frozenset) mouse.merge(Animal.fromRow('Mickey', '1')) self.assertEqual(mouse.Sex, 'male') self.assertRaises( Animal.DifferentMouseError, lambda: Animal.fromRow('Minnie', '1').merge(self.mickey)) self.assertRaises( Animal.DifferentMouseError, lambda: Animal.fromRow('Mickey', '1', 'female').merge(self.mickey)) mouse = Animal.fromRow('Mickey', '1', Notes='ble') mouse.merge(self.mickey) self.assertEqual(mouse.Notes, {'ble', 'bla'}) mouse.merge(self.mickey) self.assertEqual(mouse.Notes, {'ble', 'bla'})
def testLe(self): self.assertFalse(self.mickey <= Animal.fromRow('Jerry', '2')) self.assertTrue(Animal.fromRow('Jerry', '2') <= self.mickey) self.assertFalse(self.mickey <= 'Jerry') self.assertTrue(self.mickey <= 'Minnie') self.assertTrue( Animal.fromRow('Mickey', '2', Sex='Female') <= self.mickey) self.assertFalse( self.mickey <= Animal.fromRow('Mickey', '2', Sex='Female')) self.assertTrue(self.mickey <= Animal.fromRow('Mickey', '2')) self.assertTrue(Animal.fromRow('Mickey', '2') <= self.mickey) self.assertTrue(self.mickey <= 'Mickey') self.assertTrue(Animal(u'b\xf3br', '1') <= u'b\xf3br')
def testGt(self): self.assertTrue(self.mickey > Animal.fromRow('Jerry', '2')) self.assertFalse(Animal.fromRow('Jerry', '2') > self.mickey) self.assertTrue(self.mickey > 'Jerry') self.assertFalse(self.mickey > 'Minnie') self.assertFalse( Animal.fromRow('Mickey', '2', Sex='Female') > self.mickey) self.assertTrue( self.mickey > Animal.fromRow('Mickey', '2', Sex='Female')) self.assertFalse(self.mickey > Animal.fromRow('Mickey', '2')) self.assertFalse(Animal.fromRow('Mickey', '2') > self.mickey) self.assertFalse(self.mickey > 'Mickey') self.assertFalse(Animal(u'b\xf3br', '1') > u'b\xf3br')
def testUnicode(self): animal = Animal.fromRow(u'b\xf3br', '1') self.assertEqual(unicode(animal), u'b\xf3br') self.assertIsInstance(unicode(animal), unicode)
def testStr(self): animal = Animal.fromRow(u'b\xf3br', '1') self.assertEqual(str(animal), 'b\xc3\xb3br') self.assertIsInstance(str(animal), str)