def test_contains(self):
self.assertNotIn(MyOtherFlags.of0, MyFlags.all_flags)
self.assertNotIn(MyOtherFlags.of0, MyFlags.f0)
self.assertNotIn(False, MyFlags.f0)
self.assertNotIn(True, MyFlags.f0)
self.assertNotIn('', MyFlags.f0)
self.assertNotIn('my_string', MyFlags.f0)
self.assertNotIn(4, MyFlags.f0)
self.assertNotIn(5.5, MyFlags.f0)
self.assertNotIn(None, MyFlags.f0)
# same test cases as in case of operator.__le__(item, flags)
self.assertTrue(no_flags in no_flags)
self.assertTrue(no_flags in all_flags)
self.assertTrue(no_flags in f0)
self.assertTrue(no_flags in f1)
self.assertTrue(no_flags in f2)
self.assertTrue(no_flags in f01)
self.assertTrue(no_flags in f02)
self.assertTrue(no_flags in f12)
self.assertFalse(f0 in no_flags)
self.assertTrue(f0 in all_flags)
self.assertTrue(f0 in f0)
self.assertFalse(f0 in f1)
self.assertFalse(f0 in f2)
self.assertTrue(f0 in f01)
self.assertTrue(f0 in f02)
self.assertFalse(f0 in f12)
self.assertFalse(f01 in no_flags)
self.assertTrue(f01 in all_flags)
self.assertFalse(f01 in f0)
self.assertFalse(f01 in f1)
self.assertFalse(f01 in f2)
self.assertTrue(f01 in f01)
self.assertFalse(f01 in f02)
self.assertFalse(f01 in f12)
self.assertTrue(no_flags in all_flags)
self.assertTrue(all_flags in all_flags)
self.assertTrue(f0 in all_flags)
self.assertTrue(f1 in all_flags)
self.assertTrue(f2 in all_flags)
self.assertTrue(f01 in all_flags)
self.assertTrue(f02 in all_flags)
self.assertTrue(f12 in all_flags)