Пример #1
0
 def test_add_new_value_then_delete(self):
     """test that adding a value and then deleteing it tracks in _deleted_data and _edited_data"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types, rows=('test1','test3'), columns=('test2',))
     model.set_pivoted_data([['new_data']],[0],[1])
     model.set_pivoted_data([['']],[0],[1])
     self.assertEqual(model._deleted_data, {})
     self.assertEqual(model._edit_data, {})
Пример #2
0
 def test_edit_value_edit_back(self):
     """test that edit a value and editing it to original value to make sure it's not in _edit_value"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types)
     model.set_pivoted_data([['new_data']],[0],[0])
     model.set_pivoted_data([['value_a_aa_1']],[0],[0])
     self.assertEqual(model._deleted_data, {})
     self.assertEqual(model._edit_data, {})
Пример #3
0
 def test_delete_then_add_value(self):
     """test that deleting a value and then adding it back tracks in _deleted_data and _edited_data"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types, rows=(), columns=tuple(self.index_names))
     model.set_pivoted_data([['']],[0],[0])
     model.set_pivoted_data([['edited_val']],[0],[0])
     self.assertEqual(model._deleted_data, {})
     self.assertEqual(model._edit_data, {('a','aa',1): 'value_a_aa_1'})
Пример #4
0
 def test_set_pivoted_data4(self):
     """set data with pivot and invalid columns"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types, rows = ('test1',), columns = ('test2','test3'), tuple_index_entries = self.tuple_index_entries)
     data = [['row0_c0','row0_c6']]
     row_mask = [0]
     col_mask = [0, 6]
     new_data = {('a', 'aa', 1): 'row0_c0'}
     edit_data = {('a', 'aa', 1): 'value_a_aa_1'}
     invalid_data = {(0, 6): 'row0_c6'}
     model.set_pivoted_data(data, row_mask, col_mask)
     self.assertEqual(model._data, {**self.dict_data, **new_data})
     self.assertEqual(model._edit_data, edit_data)
     self.assertEqual(model._deleted_data, {})
     self.assertEqual(model._invalid_data, invalid_data)
Пример #5
0
 def test_set_pivoted_data2(self):
     """set data with invalid rows"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types, tuple_index_entries=self.tuple_index_entries)
     data = [['row0_c0','row0_c1'],
             ['row8_c0','row8_c1']]
     row_mask = [0, 8]
     col_mask = [0, 1]
     new_data = {('a', 'aa', 1): 'row0_c0'}
     edit_data = {('a', 'aa', 1): 'value_a_aa_1'}
     invalid_data = {(8, 0): 'row8_c0'}
     model.set_pivoted_data(data, row_mask, col_mask)
     self.assertEqual(model._data, {**self.dict_data, **new_data})
     self.assertEqual(model._edit_data, edit_data)
     self.assertEqual(model._deleted_data, {})
     self.assertEqual(model._invalid_data, invalid_data)
Пример #6
0
 def test_set_pivoted_data1(self):
     """set data"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types, tuple_index_entries=self.tuple_index_entries)
     data = [['row0_c0','row0_c1'],
             ['row2_c0','row2_c1']]
     row_mask = [0, 2]
     col_mask = [0, 1]
     new_data = {('a', 'aa', 1): 'row0_c0',
                 ('b', 'cc', 3): 'row2_c0'}
     edit_data = {('a', 'aa', 1): 'value_a_aa_1',
                 ('b', 'cc', 3): 'value_b_cc_3'}
     model.set_pivoted_data(data, row_mask, col_mask)
     self.assertEqual(model._data, {**self.dict_data, **new_data})
     self.assertEqual(model._edit_data, edit_data)
     self.assertEqual(model._deleted_data, {})
     self.assertEqual(model._invalid_data, {})
Пример #7
0
 def test_set_pivoted_data3(self):
     """set data with pivot"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types, rows = ('test1','test2'), columns = ('test3',))
     data = [['row0_c0','row0_c1'],
             ['row2_c0','row2_c1']]
     row_mask = [0, 2]
     col_mask = [0, 1]
     new_data = {('a', 'aa', 1): 'row0_c0',
                 ('a', 'aa', 2): 'row0_c1',
                 ('b', 'cc', 1): 'row2_c0',
                 ('b', 'cc', 2): 'row2_c1'}
     edit_data = {('a', 'aa', 1): 'value_a_aa_1',
                  ('a', 'aa', 2): None,
                  ('b', 'cc', 1): None,
                  ('b', 'cc', 2): None}
     model.set_pivoted_data(data, row_mask, col_mask)
     self.assertEqual(model._data, {**self.dict_data, **new_data})
     self.assertEqual(model._edit_data, edit_data)
     self.assertEqual(model._deleted_data, {})
     self.assertEqual(model._invalid_data, {})