Exemplo n.º 1
0
 def test_from_dict_list(self):
     """Test that the from_dict_list factory method works."""
     E_NORMAL = Enum('DOG', 'CAT', HAMSTER = 1)
     E_FACTORY = Enum.from_dict_list({'HAMSTER': 1}, ['DOG', 'CAT'])
     self.assertEqual(E_FACTORY.DOG, E_NORMAL.DOG)
     self.assertEqual(E_FACTORY.CAT, E_NORMAL.CAT)
     self.assertEqual(E_FACTORY.HAMSTER, E_NORMAL.HAMSTER)
     self.assertEqual(E_FACTORY.numbers_list(), E_NORMAL.numbers_list())
     for f, n in zip(E_FACTORY.values_generator(),
             E_NORMAL.values_generator()):
         self.assertEqual(f, n)
     # zip tries to handle generators that produce different numbers of items
     # so we double check that they're both the same size here.
     self.assertEqual(len([x for x in E_FACTORY.values_generator()]),
             len([x for x in E_NORMAL.values_generator()]))
Exemplo n.º 2
0
 def test_generate_string(self):
     """Test the values_generator method."""
     ANIMALS = Enum('DOG', 'CAT', 'WOLF', HAMSTER=0, RABBIT=2, WHALE=100)
     expected = ['HAMSTER', 'DOG', 'RABBIT', 'CAT', 'WOLF', 'WHALE']
     expected_index = 0
     for val in ANIMALS.values_generator():
         self.assertEqual(val, expected[expected_index])
         expected_index += 1