예제 #1
0
    def test_dictionary_decorated(self):
        @types.dictionary
        def validate(value):
            assert len(value) == 1, 'too long'

        with raises(AssertionError) as exc:
            validate({'a': 1, 'b': 2})
        result = util.assert_message(exc)
        assert result == 'too long'
예제 #2
0
    def test_array_decorated(self):
        @types.array
        def validate(value):
            assert len(value) == 1, 'too long'

        with raises(AssertionError) as exc:
            validate([1, 2])
        result = util.assert_message(exc)
        assert result == 'too long'
예제 #3
0
    def test_string_decorated(self):
        @types.string
        def validate(value):
            assert len(value) == 1, 'too long'

        with raises(AssertionError) as exc:
            validate('123')
        result = util.assert_message(exc)
        assert result == 'too long'
예제 #4
0
    def test_boolean_decorated(self):
        @types.boolean
        def validate(value):
            assert value is False, 'not false'

        with raises(AssertionError) as exc:
            validate(True)
        result = util.assert_message(exc)
        assert result == 'not false'
예제 #5
0
    def test_array_decorated(self):
        @types.array
        def validate(value):
            assert len(value) == 1, 'too long'

        with raises(AssertionError) as exc:
            validate([1, 2])
        result = util.assert_message(exc)
        assert result == 'too long'
예제 #6
0
    def test_dictionary_decorated(self):
        @types.dictionary
        def validate(value):
            assert len(value) == 1, 'too long'

        with raises(AssertionError) as exc:
            validate({'a': 1, 'b': 2})
        result = util.assert_message(exc)
        assert result == 'too long'
예제 #7
0
    def test_boolean_decorated(self):
        @types.boolean
        def validate(value):
            assert value is False, 'not false'

        with raises(AssertionError) as exc:
            validate(True)
        result = util.assert_message(exc)
        assert result == 'not false'
예제 #8
0
    def test_string_decorated(self):
        @types.string
        def validate(value):
            assert len(value) == 1, 'too long'

        with raises(AssertionError) as exc:
            validate('123')
        result = util.assert_message(exc)
        assert result == 'too long'
예제 #9
0
    def test_integer_fail(self):
        @types.integer
        def validate(value):
            assert value == 1, 'too big'

        with raises(AssertionError) as exc:
            validate(3)

        result = util.assert_message(exc)
        assert result == 'too big'
예제 #10
0
    def test_integer_fail(self):
        @types.integer
        def validate(value):
            assert value == 1, 'too big'

        with raises(AssertionError) as exc:
            validate(3)

        result = util.assert_message(exc)
        assert result == 'too big'
예제 #11
0
 def test_callable_with_messages_are_passed_on(self):
     def callable_message(v): assert False, "this is completely False"
     with raises(Invalid) as exc:
         engine.enforce(1, callable_message, ['1'], 'key')
     result = util.assert_message(exc.value.reason)
     assert result  == "this is completely False"