예제 #1
0
 def test_auto_description(self):
     fld = IntEnumField(testmodels.Service)
     self.assertEqual(
         fld.description,
         "python_programming: 1\ndatabase_design: 2\nsystem_administration: 3"
     )
예제 #2
0
 def test_manual_description(self):
     fld = IntEnumField(testmodels.Service, description="foo")
     self.assertEqual(fld.description, "foo")
예제 #3
0
 def test_range2_fails(self):
     with self.assertRaisesRegex(
             ConfigurationError,
             "The valid range of IntEnumField's values is 0..32767!"):
         IntEnumField(BadIntEnum2)
예제 #4
0
 def test_char_fails(self):
     with self.assertRaisesRegex(
             ConfigurationError,
             "IntEnumField only supports integer enums!"):
         IntEnumField(testmodels.Currency)
예제 #5
0
 def test_range3_manual(self):
     fld = IntEnumField(BadIntEnumIfGenerated)
     self.assertIs(fld.enum_type, BadIntEnumIfGenerated)
예제 #6
0
 def test_range3_generated_fails(self):
     with self.assertRaisesRegex(
             ConfigurationError,
             "The valid range of IntEnumField's values is 1..32767!"):
         IntEnumField(BadIntEnumIfGenerated, generated=True)
예제 #7
0
class User(Model):
    username: str = CharField(pk=True, max_length=32)
    password: str = CharField(max_length=80)
    email: str = CharField(unique=True, max_length=64)
    role: Role = IntEnumField(Role)