def test_multiple_days(self): """weblinkback - linkbacks of different days""" test_data = self.test_data[0:11] result = split_in_days(test_data) # Group count self.assertEqual(6, len(result)) # First group self.assertEqual(1, len(result[0])) self.assertEqual(self.test_data[0], result[0][0]) # Second group self.assertEqual(3, len(result[1])) self.assertEqual(self.test_data[1], result[1][0]) self.assertEqual(self.test_data[2], result[1][1]) self.assertEqual(self.test_data[3], result[1][2]) # Third group self.assertEqual(2, len(result[2])) self.assertEqual(self.test_data[4], result[2][0]) self.assertEqual(self.test_data[5], result[2][1]) # Fourth group self.assertEqual(1, len(result[3])) self.assertEqual(self.test_data[6], result[3][0]) # Fifth group self.assertEqual(2, len(result[4])) self.assertEqual(self.test_data[7], result[4][0]) self.assertEqual(self.test_data[8], result[4][1]) # Sixth group self.assertEqual(1, len(result[5])) self.assertEqual(self.test_data[9], result[5][0])
def test_one_linkback(self): """weblinkback - one linkback (edge case test)""" test_data = self.test_data[0:1] result = split_in_days(test_data) self.assertEqual(1, len(result)) self.assertEqual(1, len(result[0])) self.assertEqual(self.test_data[0], result[0][0])
def test_all_same_day(self): """weblinkback - all linkbacks of the same day (edge case test)""" test_data = self.test_data[1:4] result = split_in_days(test_data) self.assertEqual(1, len(result)) self.assertEqual(3, len(result[0])) self.assertEqual(self.test_data[1], result[0][0]) self.assertEqual(self.test_data[2], result[0][1]) self.assertEqual(self.test_data[3], result[0][2])
def test_multiple_days_reversed(self): """weblinkback - linkbacks of different days in reversed order""" # Reverse test data test_data = list(self.test_data[0:11]) test_data.reverse() test_data_reversed = tuple(test_data) result = split_in_days(test_data_reversed) # Group count self.assertEqual(6, len(result)) # First group self.assertEqual(1, len(result[0])) self.assertEqual(self.test_data[9], result[0][0]) # Second group self.assertEqual(2, len(result[1])) self.assertEqual(self.test_data[8], result[1][0]) self.assertEqual(self.test_data[7], result[1][1]) # Third group self.assertEqual(1, len(result[2])) self.assertEqual(self.test_data[6], result[2][0]) # Fourth group self.assertEqual(2, len(result[3])) self.assertEqual(self.test_data[5], result[3][0]) self.assertEqual(self.test_data[4], result[3][1]) # Fifth group self.assertEqual(3, len(result[4])) self.assertEqual(self.test_data[3], result[4][0]) self.assertEqual(self.test_data[2], result[4][1]) self.assertEqual(self.test_data[1], result[4][2]) # Sixth group self.assertEqual(1, len(result[5])) self.assertEqual(self.test_data[0], result[5][0])
def test_no_linkbacks(self): """weblinkback - no linkbacks (edge case test)""" result = split_in_days(()) self.assertEqual(0, len(result))