1from sqlobject.constraints import * 2from sqlobject.tests.dbtest import * 3 4def test_constraints(): 5 obj = 'Test object' 6 col = Dummy(name='col') 7 isString(obj, col, 'blah') 8 raises(BadValue, isString, obj, col, 1) 9 # @@: Should this really be an error? 10 raises(BadValue, isString, obj, col, u'test!') 11 #isString(obj, col, u'test!') 12 13 raises(BadValue, notNull, obj, col, None) 14 raises(BadValue, isInt, obj, col, 1.1) 15 isInt(obj, col, 1) 16 isInt(obj, col, 1L) 17 isFloat(obj, col, 1) 18 isFloat(obj, col, 1L) 19 isFloat(obj, col, 1.2) 20 raises(BadValue, isFloat, obj, col, '1.0') 21 22 # @@: Should test isBool, but I don't think isBool is right 23 24 lst = InList(('a', 'b', 'c')) 25 lst(obj, col, 'a') 26 raises(BadValue, lst, obj, col, ('a', 'b', 'c')) 27 raises(BadValue, lst, obj, col, 'A') 28 29 maxlen = MaxLength(2) 30 raises(BadValue, maxlen, obj, col, '123') 31 maxlen(obj, col, '12') 32 maxlen(obj, col, (1,)) 33 raises(BadValue, maxlen, obj, col, 1) 34