def test_different_length_lists(self):
     in1 = [1, 2, 3]
     in2 = [4, 5, 6, 7, 8]
     out1 = [1, 4, 2, 5, 3, 6, 7, 8]
     self.assertIterableEqual(interleave(in1, in2), out1)
     self.assertIterableEqual(
         interleave([1, 2], [4, 5, 6]),
         [1, 4, 2, 5, 6],
     )
Beispiel #2
0
 def test_response_is_iterator(self):
     in1 = [1, 2, 3]
     in2 = [4, 5, 6]
     output = interleave(in1, in2)
     self.assertEqual(iter(output), iter(output))
     list(output)
     self.assertEqual(list(output), [])
Beispiel #3
0
 def test_non_sequences(self):
     in1 = [1, 2, 3, 4]
     in2 = (n**2 for n in in1)
     out = [1, 1, 2, 4, 3, 9, 4, 16]
     self.assertIterableEqual(interleave(in1, in2), out)
Beispiel #4
0
 def test_none_value(self):
     in1 = [1, 2, 3, None]
     in2 = [4, 5, 6, 7]
     out = [1, 4, 2, 5, 3, 6, None, 7]
     self.assertIterableEqual(interleave(in1, in2), out)
Beispiel #5
0
 def test_four_items_each(self):
     in1 = [1, 2, 3, 4]
     in2 = [5, 6, 7, 8]
     out = [1, 5, 2, 6, 3, 7, 4, 8]
     self.assertIterableEqual(interleave(in1, in2), out)
Beispiel #6
0
 def test_two_items_each(self):
     self.assertIterableEqual(interleave([1, 2], [3, 4]), [1, 3, 2, 4])
Beispiel #7
0
 def test_single_item_each(self):
     self.assertIterableEqual(interleave([1], [2]), [1, 2])
Beispiel #8
0
 def test_empty_lists(self):
     self.assertIterableEqual(interleave([], []), [])