def test_deserialise_vars(self): lst = ['name=a;doc=docstring_1;unit=mm;components=None;sep= - ;category=None;tags=None;identifier=None', 'name=b;doc=docstring_2;unit=m/s;components=None;sep= - ;category=None;tags=None;identifier=None'] res = persist.deserialise_vars(lst) store = Store() v1 = store.add('a', 'docstring_1', 'mm') v2 = store.add('b', 'docstring_2', 'm/s') self.assertDictEqual(res, store)
def test_serialise_vars(self): store = Store() v1 = store.add('a', 'docstring_1', 'mm') v2 = store.add('b', 'docstring_2', 'm/s') lst = [{'index': 0, 'independent': {v1: 1, v2: 2}, 'dependent': {v1: 5, v2: 7}}] b = Box(lst) res = persist.serialise_vars(b) expected = ['name=a;doc=docstring_1;unit=mm;components=None;sep= - ;category=None;tags=None;identifier=None', 'name=b;doc=docstring_2;unit=m/s;components=None;sep= - ;category=None;tags=None;identifier=None'] self.assertListEqual(res, expected)
def test_suffixed(self): s = Store() v1 = s.add('test') v2 = s.suffixed(v1, ' suffix') self.assertEqual(len(s), 2) test2 = s['test suffix'] self.assertTrue(v2 is test2)
def test_make_pack(self): store = Store() v1 = store.add('a', 'docstring_1', 'mm') v2 = store.add('b', 'docstring_2', 'm/s') lst = [{'index': 0, 'independent': {v1: 1, v2: 2}, 'dependent': {v1: 5, v2: 7}}] box = Box(lst) dct = persist.make_pack(box) expected = {'data': [{'index': 0, 'independent': {'a [mm]': 1, 'b [m/s]': 2}, 'dependent': {'a [mm]': 5, 'b [m/s]': 7}}], 'vars': ['name=a;doc=docstring_1;unit=mm;components=None;sep= - ;category=None;tags=None;identifier=None', 'name=b;doc=docstring_2;unit=m/s;components=None;sep= - ;category=None;tags=None;identifier=None']} self.assertDictEqual(dct, expected)
def test_unpack(self): pack = {'data': [{'index': 0, 'independent': {'a [mm]': 1, 'b [m/s]': 2}, 'dependent': {'a [mm]': 5, 'b [m/s]': 7}}], 'vars': ['name=a;doc=docstring_1;unit=mm;components=None;sep= - ;category=None;tags=None;identifier=None', 'name=b;doc=docstring_2;unit=m/s;components=None;sep= - ;category=None;tags=None;identifier=None']} store = Store() v1 = store.add('a', 'docstring_1', 'mm') v2 = store.add('b', 'docstring_2', 'm/s') lst = [{'index': 0, 'independent': {v1: 1, v2: 2}, 'dependent': {v1: 5, v2: 7}}] box = Box(lst) box_unpacked = persist.unpack(pack) self.assertListEqual(box, box_unpacked) keys = list(box_unpacked[0]['dependent'].keys()) for k in keys: self.assertTrue(isinstance(k, Variable)) self.assertTrue(k in store) self.assertEqual(store[k].to_str(), k.to_str())
def test_identifier_getattr(self): s = Store() v = s.add('test', identifier='TEST') self.assertEqual(s.TEST, v)
def test_identifier_getitem(self): s = Store() v = s.add('test', identifier='TEST') self.assertEqual(s['TEST'], v)
def test_add(self): s = Store() v = s.add('test') self.assertEqual(len(s), 1)