def test_tail_init(self): # Тестирование классического конструктора (head, [tail]) # Проходим по инвертированным данным и for data in self.data_set: sample = None for item in reversed(data): sample = my_list.List(item, sample) sample = my_list.List(self.head[0], sample) if not sample: sample = [] self.assertEqual(self.head + list(data), list(sample))
def test_add(self): # Для каждого набора тестовых данных # проверим корректность выполнения операции + # для случаев: obj + [...] и obj + obj, # где type(obj) ~ List print("Testing add op.") for data in self.data_set: sample = my_list.List(self.head[0]) new_sample = sample + data self.assertEqual(self.head + data, list(new_sample)) data_list = my_list.List(self.head[0]) + data new_sample = sample + data_list self.assertEqual(self.head + self.head + data, list(new_sample))
def test_iter(self): # Проходим по стартовому набору и проверяем # корректность итератора print("Testing iterator.") for data in self.data_set: sample = my_list.List(self.head[0]) + data self.assertEqual(self.head + data, list(sample))
def test_append(self): # Каждый список из тестового набора # добавим в новый объект List и сравним содержимое # c исходными данными print("Testing append.") for data in self.data_set: sample = my_list.List(self.head[0]) for item in data: sample.append(item) self.assertEqual(self.head + data, list(sample))
def test_reversed(self): print("Testing reverse iterator.") for data in self.data_set: sample = my_list.List(self.head[0]) + data self.assertEqual( list(reversed(data)) + self.head, list(reversed(sample)))