1
0
Fork 0
mirror of https://github.com/yweber/lodel2.git synced 2025-12-17 07:16:55 +01:00

[broken tests] Updated EmField to use FieldDataHandler

This commit is contained in:
Yann 2016-03-23 16:48:34 +01:00
commit 62752d9f8c
3 changed files with 16 additions and 14 deletions

View file

@ -6,6 +6,7 @@ import copy
import hashlib
from lodel.utils.mlstring import MlString
from lodel.leapi.datahandlers.field_data_handler import FieldDataHandler
from lodel.editorial_model.exceptions import *
@ -123,14 +124,16 @@ class EmField(EmComponent):
## @brief Instanciate a new EmField
# @param uid str : uniq identifier
# @param display_name MlString|str|dict : field display_name
# @param data_handler class|str : A DataHandler class or display_name
# @param data_handler str : A DataHandler name
# @param help_text MlString|str|dict : help text
# @param group EmGroup :
# @param **handler_kwargs : data handler arguments
def __init__(self, uid, data_handler, display_name = None, help_text = None, group = None, **handler_kwargs):
super().__init__(uid, display_name, help_text, group)
self.data_handler = data_handler
self.data_handler_name = data_handler
self.data_handler_cls = FieldDataHandler(data_handler)
self.data_handler_options = handler_kwargs
self.data_handler_instance = self.data_handler_cls(**handler_kwargs)
## @brief Stores the emclass that contains this field (set by EmClass.add_field() method)
self._emclass = None
@ -144,7 +147,6 @@ class EmField(EmComponent):
'utf-8')
).digest(), byteorder='big')
## @brief Handles functionnal group of EmComponents
class EmGroup(object):

View file

@ -13,11 +13,11 @@ class EditorialModelTestCase(unittest.TestCase):
""" Test the deterministic hash method """
model = EditorialModel("test model", description = "Test EM")
cls1 = model.new_class('testclass1', display_name = 'Classe de test 1', help_text = 'super aide')
c1f1 = cls1.new_field('c1testfield1', data_handler = None)
c1f2 = cls1.new_field('c1testfield2', data_handler = None)
c1f1 = cls1.new_field('c1testfield1', data_handler = 'varchar')
c1f2 = cls1.new_field('c1testfield2', data_handler = 'varchar')
cls2 = model.new_class('testclass2')
c2f1 = cls2.new_field('c2testfield1', data_handler = None)
c2f2 = cls2.new_field('c2testfield2', data_handler = None)
c2f1 = cls2.new_field('c2testfield1', data_handler = 'varchar')
c2f2 = cls2.new_field('c2testfield2', data_handler = 'varchar')
grp1 = model.new_group('testgroup1')
grp1.add_components((cls1, c1f1))
grp2 = model.new_group('testgroup2')
@ -51,9 +51,9 @@ class EmClassTestCase(unittest.TestCase):
def test_fields(self):
""" Bad test on add field method (only check uid presence) """
cls = EmClass('testClass', 'test_class', 'A test class')
cls.new_field('name', data_handler = None)
cls.new_field('string', data_handler = None)
cls.new_field('lodel_id', data_handler = None)
cls.new_field('name', data_handler = 'varchar')
cls.new_field('string', data_handler = 'varchar')
cls.new_field('lodel_id', data_handler = 'varchar')
fields = cls.fields()
self.assertEqual(len(fields), 3)

View file

@ -14,11 +14,11 @@ class PickleFileTestCase(unittest.TestCase):
def test_save(self):
model = EditorialModel("test model", description = "Test EM")
cls1 = model.new_class('testclass1', display_name = 'Classe de test 1', help_text = 'super aide')
c1f1 = cls1.new_field('testfield1', data_handler = None)
c1f2 = cls1.new_field('testfield2', data_handler = None)
c1f1 = cls1.new_field('testfield1', data_handler = 'varchar')
c1f2 = cls1.new_field('testfield2', data_handler = 'varchar')
cls2 = model.new_class('testclass2')
c2f1 = cls2.new_field('testfield1', data_handler = None)
c2f2 = cls2.new_field('testfield2', data_handler = None)
c2f1 = cls2.new_field('testfield1', data_handler = 'varchar')
c2f2 = cls2.new_field('testfield2', data_handler = 'varchar')
grp1 = model.new_group('testgroup1')
grp1.add_components((cls1, c1f1))