Пример #1
0
 def test_delete_index_values_with_same_name2(self):
     """Test that deleteing indexes with same name deletes all data"""
     model = PivotModel()
     data = [['a', 'b', 'c', 1], ['d', 'a', 'c', 1] , ['c','d','e', 1]]
     model.set_new_data(data, self.index_names, self.index_types, index_real_names = ['test','test','test3'])
     model.delete_index_values({'test': set(['a'])})
     self.assertEqual(model._data, {('c','d','e'): 1})
Пример #2
0
 def test_delete_index_values_with_same_name4(self):
     """Test that deleteing indexes with same name deletes all in _used_index_entries"""
     model = PivotModel()
     data = [['a', 'b', 'c', 1], ['d', 'a', 'c', 1] , ['c','d','e', 1]]
     model.set_new_data(data, self.index_names, self.index_types, index_real_names = ['test','test','test3'], used_index_values={('test',): set(['a','b','c','d'])})
     model.delete_index_values({'test': set(['a'])})
     self.assertEqual(model._used_index_values[('test',)], set(['b','c','d']))
Пример #3
0
 def test_delete_index_values6(self):
     """test deleting index values deletes them from _added_index_entries"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types)
     model._added_index_entries['test1'] = set(['a','b','c'])
     model.delete_index_values({'test1': set(['a'])})
     self.assertEqual(model._added_index_entries['test1'], set(['b','c']))
Пример #4
0
 def test_delete_entries_with_wrong_index(self):
     """Test that deleting an entrie with wrong index doesn't delete from used_index_values"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types, used_index_values = {('test1', 'test2'): set(['wrong_index'])})
     model._add_index_value('wrong_index','test1')
     model.delete_index_values({'test2': set(['wrong_index'])})
     self.assertEqual(model._used_index_values, {('test1', 'test2'): set(['wrong_index'])})
Пример #5
0
 def test_delete_index_values5(self):
     """test deleting index values also deletes tuple index entries"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types, tuple_index_entries=self.tuple_index_entries)
     expected_tuple_values = set([('b', 'cc'), ('c', 'cc'), ('d', 'dd'), ('e', 'ee'), ('f', 'ee')])
     deleted_tuple_values = set([('a','aa'), ('a', 'bb'), ('a', 'cc')])
     model.delete_index_values({'test1': set(['a'])})
     self.assertEqual(model.tuple_index_entries[('test1', 'test2')], expected_tuple_values)
     self.assertEqual(model._deleted_tuple_index_entries[('test1', 'test2')], deleted_tuple_values)
Пример #6
0
 def test_delete_index_then_add(self):
     """test that deleting an index and then readding it removes it from _deleted_index_entries and doesn't add to _added_index_entries"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types, used_index_values = {('test1', 'test2'): set()})
     model.delete_index_values({'test1': set(['a'])})
     self.assertEqual(model._deleted_index_entries['test1'], set(['a']))
     self.assertEqual(model._added_index_entries['test1'], set())
     result1 = model._add_index_value('a', 'test1')
     self.assertTrue(result1)
     self.assertEqual(model._added_index_entries['test1'], set())
     self.assertEqual(model._deleted_index_entries['test1'], set())
Пример #7
0
 def test_delete_index_values3(self):
     """test deleting index values deletes column headers"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types, rows = ('test1','test2'), columns = ('test3',))
     row_headers = model._column_data_header.copy()
     row_headers.pop(4)
     row_headers_set = set(model._row_data_header_set)
     row_headers_set.discard((5,))
     model.delete_index_values({'test3': set([5])})
     self.assertEqual(model._column_data_header, row_headers)
     self.assertEqual(model._row_data_header_set, row_headers_set)
Пример #8
0
 def test_delete_index_values1(self):
     """test deleting index values deletes data"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types)
     data_dict = self.dict_data
     deleted_data = {}
     deleted_data[('a','aa',1)] = data_dict.pop(('a','aa',1))
     deleted_data[('a','bb',2)] = data_dict.pop(('a','bb',2))
     model.delete_index_values({'test1': set(['a'])})
     self.assertEqual(model._data, data_dict)
     self.assertEqual(model._deleted_data, deleted_data)
Пример #9
0
 def test_delete_index_values2(self):
     """test deleting index values deletes row headers"""
     model = PivotModel()
     model.set_new_data(self.data, self.index_names, self.index_types)
     row_headers = model._row_data_header.copy()
     row_headers.pop(0)
     row_headers.pop(0)
     row_headers_set = set(model._row_data_header_set)
     row_headers_set.discard(('a','aa',1))
     row_headers_set.discard(('a','bb',2))
     model.delete_index_values({'test1': set(['a'])})
     self.assertEqual(model._row_data_header, row_headers)
     self.assertEqual(model._row_data_header_set, row_headers_set)