| 4363 | self.assertIs(type(e), Perm) |
| 4364 | |
| 4365 | def test_programatic_function_iterable(self): |
| 4366 | Perm = IntFlag('Perm', (('R', 2), ('W', 8), ('X', 32))) |
| 4367 | lst = list(Perm) |
| 4368 | self.assertEqual(len(lst), len(Perm)) |
| 4369 | self.assertEqual(len(Perm), 3, Perm) |
| 4370 | self.assertEqual(lst, [Perm.R, Perm.W, Perm.X]) |
| 4371 | for i, n in enumerate('R W X'.split()): |
| 4372 | v = 1<<(2*i+1) |
| 4373 | e = Perm(v) |
| 4374 | self.assertEqual(e.value, v) |
| 4375 | self.assertEqual(type(e.value), int) |
| 4376 | self.assertEqual(e, v) |
| 4377 | self.assertEqual(e.name, n) |
| 4378 | self.assertIn(e, Perm) |
| 4379 | self.assertIs(type(e), Perm) |
| 4380 | |
| 4381 | def test_programatic_function_from_dict(self): |
| 4382 | Perm = IntFlag('Perm', OrderedDict((('R', 2), ('W', 8), ('X', 32)))) |