Yann Weber 8 лет назад
Родитель
Сommit
77d6fd8df5
2 измененных файлов: 13 добавлений и 2 удалений
  1. 4
    2
      lodel/leapi/query.py
  2. 9
    0
      tests/leapi/test_leobject.py

+ 4
- 2
lodel/leapi/query.py Просмотреть файл

@@ -23,8 +23,10 @@ class LeQuery(object):
23 23
         from .leobject import LeObject
24 24
         if self._hook_prefix is None:
25 25
             raise NotImplementedError("Abstract class")
26
-        if not issubclass(target_class, LeObject):
27
-            raise TypeError("target class has to be a child class of LeObject")
26
+        if not inspect.isclass(target_class) or \
27
+            not issubclass(target_class, LeObject):
28
+            raise TypeError("target class has to be a child class of LeObject \
29
+but %s given"% target_class)
28 30
         self._target_class = target_class
29 31
         self._ro_datasource = target_class._ro_datasource
30 32
         self._rw_datasource = target_class._rw_datasource

+ 9
- 0
tests/leapi/test_leobject.py Просмотреть файл

@@ -52,3 +52,12 @@ class LeFilteredQueryTestCase(unittest.TestCase):
52 52
         self.assertEqual(set(fnames),
53 53
             {'lastname', 'linked_texts', 'firstname', 'alias'})
54 54
 
55
+    def test_insert(self):
56
+        dyncode.Person.insert({'lastname': 'foo', 'firstname': 'bar'})
57
+    
58
+    @unittest.skip("wait")
59
+    def test_bad_insert(self):
60
+        """ Insert with bad arguments """
61
+        dyncode.Person.insert({})
62
+        dyncode.Person.insert({'lodel_id': 1,'lastname': 'foo', 'firstname': 'bar'})
63
+

Загрузка…
Отмена
Сохранить