def test_integer_field_should_allow_filters():
    # given
    from tests.app.models import User, UserStatus

    # when
    instance = User()
    instance.status = UserStatus.ACTIVE
    instance.save()

    User.objects.create(status=UserStatus.INACTIVE)

    # then
    assert instance.status.value == UserStatus.ACTIVE

    instance2 = User.objects.filter(status=UserStatus.ACTIVE).first()
    assert instance.pk == instance2.pk
    def test_creator_should_call_field_to_python_on_assigment(self):
        from tests.app.models import User, UserStatus

        with mock.patch(
                'choicesenum.django.fields.EnumFieldMixin.to_python') as m:
            m.return_value = UserStatus.DELETED

            # given
            instance = User()

            # when
            instance.status = UserStatus.ACTIVE

            # then
            m.assert_called_with(UserStatus.ACTIVE)
            assert instance.status == UserStatus.DELETED
예제 #3
0
def test_field_sqlite():
    User(email='*****@*****.**').save()
    user = User.objects.filter(email='*****@*****.**').first()
    assert user
    assert user.email == '*****@*****.**'
예제 #4
0
def test_field_postgresql():
    User(email='*****@*****.**').save(using='psql')
    user = User.objects.using('psql').filter(email='*****@*****.**').first()
    assert user
    assert user.email == '*****@*****.**'