163 self.execute, 'INSERT CWEType X: X name "CWUser"') |
163 self.execute, 'INSERT CWEType X: X name "CWUser"') |
164 self.assertRaises(ValidationError, |
164 self.assertRaises(ValidationError, |
165 self.execute, 'INSERT CWRType X: X name "in_group"') |
165 self.execute, 'INSERT CWRType X: X name "in_group"') |
166 |
166 |
167 def test_validation_unique_constraint(self): |
167 def test_validation_unique_constraint(self): |
168 self.assertRaises(ValidationError, |
168 with self.assertRaises(ValidationError) as cm: |
169 self.execute, 'INSERT CWUser X: X login "admin"') |
|
170 try: |
|
171 self.execute('INSERT CWUser X: X login "admin"') |
169 self.execute('INSERT CWUser X: X login "admin"') |
172 except ValidationError, ex: |
170 ex = cm.exception |
173 ex.tr(unicode) |
171 ex.translate(unicode) |
174 self.assertIsInstance(ex.entity, int) |
172 self.assertIsInstance(ex.entity, int) |
175 self.assertEqual(ex.errors, {'login-subject': 'the value "admin" is already used, use another one'}) |
173 self.assertEqual(ex.errors, {'login-subject': 'the value "admin" is already used, use another one'}) |
176 |
174 |
177 |
175 |
178 if __name__ == '__main__': |
176 if __name__ == '__main__': |
179 from logilab.common.testlib import unittest_main |
177 from logilab.common.testlib import unittest_main |
180 unittest_main() |
178 unittest_main() |