def test_double_reader(self): testdata = ['block1', 'block2', 'block3'] consumer1 = TestGeneratorConsumer() reader1 = reader_from_generator_accepting_function(consumer1.consumer) consumer2 = TestGeneratorConsumer() reader2 = reader_from_generator_accepting_function(consumer2.consumer) for d in testdata: self.assertTrue(reader1(d)) self.assertTrue(reader2(d)) self.assertFalse(reader1('')) self.assertFalse(reader2('')) expected = ['start'] + testdata + ['end'] self.assertEqual(expected, consumer1.data) self.assertEqual(expected, consumer2.data)
def test_single_reader_no_data(self): testdata = [] consumer = TestGeneratorConsumer() reader = reader_from_generator_accepting_function(consumer.consumer) self.assertEqual([], consumer.data) for d in testdata: reader(d) reader('') self.assertEqual(['start'] + testdata + ['end'], consumer.data)
def test_single_reader(self): testdata = ['block1', 'block2', 'block3'] consumer = TestGeneratorConsumer() reader = reader_from_generator_accepting_function(consumer.consumer) self.assertEqual([], consumer.data) for d in testdata: self.assertTrue(reader(d)) self.assertFalse(reader('')) self.assertEqual(['start'] + testdata + ['end'], consumer.data)
def test_single_reader_limited0(self): testdata = ['block1', 'block2', 'block3'] consumer = TestGeneratorConsumer() reader = reader_from_generator_accepting_function( consumer.limited_consumer(0)) self.assertEqual([], consumer.data) for d in testdata: reader(d) reader('') self.assertEqual(['start', 'end'], consumer.data)