Browse Source

EmField d_hash() bugfix + tests updates

Yann Weber 9 years ago
parent
commit
c98d1cb703
2 changed files with 6 additions and 5 deletions
  1. 3
    2
      lodel/editorial_model/components.py
  2. 3
    3
      tests/editorial_model/test_model.py

+ 3
- 2
lodel/editorial_model/components.py View File

142
     def d_hash(self):
142
     def d_hash(self):
143
         return int.from_bytes(hashlib.md5(
143
         return int.from_bytes(hashlib.md5(
144
                         bytes(
144
                         bytes(
145
-                                "%s%s" % (  super().d_hash(),
146
-                                            self.data_handler), 
145
+                                "%s%s%s" % (  super().d_hash(),
146
+                                            self.data_handler_name,
147
+                                            self.data_handler_options), 
147
                                 'utf-8')
148
                                 'utf-8')
148
         ).digest(), byteorder='big')
149
         ).digest(), byteorder='big')
149
 
150
 

+ 3
- 3
tests/editorial_model/test_model.py View File

23
         grp2 = model.new_group('testgroup2')
23
         grp2 = model.new_group('testgroup2')
24
         grp2.add_components((cls2, c1f2, c2f1, c2f2))
24
         grp2.add_components((cls2, c1f2, c2f1, c2f2))
25
         grp2.add_dependencie(grp1)
25
         grp2.add_dependencie(grp1)
26
-        e_hash = 105398984207109703509695004279282115094
26
+        e_hash = 94953339620599825962088463313192727554
27
         self.assertEqual(model.d_hash(), e_hash)
27
         self.assertEqual(model.d_hash(), e_hash)
28
 
28
 
29
         c2f1.uid = 'foobar'
29
         c2f1.uid = 'foobar'
64
 
64
 
65
     def test_d_hash(self):
65
     def test_d_hash(self):
66
         """ Test the deterministic hash method """
66
         """ Test the deterministic hash method """
67
-        field = EmField('test field', 'foobar')
68
-        e_hash = 16085043663725855508634914630594968402
67
+        field = EmField('test field', 'varchar')
68
+        e_hash = 46862393036804483771609032070241291172
69
         self.assertEqual(field.d_hash(), e_hash)
69
         self.assertEqual(field.d_hash(), e_hash)
70
         field.uid = 'test field.'
70
         field.uid = 'test field.'
71
         self.assertNotEqual(field.d_hash(), e_hash)
71
         self.assertNotEqual(field.d_hash(), e_hash)

Loading…
Cancel
Save