def test_divisibleby(self): stream = Stream(xrange(2000)) stream = stream.ints().divisible_by(10) self.assertEqual(stream.count(), 200) stream = Stream(xrange(2000)) stream = stream.divisible_by(1000) self.assertEquals(list(stream), [0, 1000])
def test_it_should_filter_evens(self): stream = Stream(range(6)) stream = stream.evens() self.assertListEqual(list(stream), [0, 2, 4]) stream = Stream(xrange(200)) stream = stream.ints().evens() elements = list(stream) self.assertEqual(len(elements), 100) self.assertTrue(all(item % 2 == 0 for item in elements))
def test_it_should_filter_by_regular_expression(self): stream = Stream((text_type(x) for x in xrange(100))) ones = stream.regexp(r'^1') self.assertListEqual( list(ones), ['1', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19']) stream = Stream(str(item) for item in xrange(1000)) stream = stream.regexp(r"^10*$") stream = stream.ints() self.assertListEqual(list(stream), [1, 10, 100])
def test_it_should_filter_by_divisibility(self): stream = Stream(range(6)) stream = stream.divisible_by(2) self.assertListEqual(list(stream), [0, 2, 4]) stream = Stream(xrange(2000)) stream = stream.ints().divisible_by(10) self.assertEqual(stream.count(), 200) stream = Stream(xrange(2000)) stream = stream.divisible_by(1000) self.assertEquals(list(stream), [0, 1000])
def test_it_should_cast_a_stream_to_ints(self): items = list(xrange(10)) + ['0', '23', '99', 'foo', None] stream = Stream(items) ints = stream.ints() self.assertListEqual(list(ints), [int(i) for i in items[0:-2]])
def test_evens(self): stream = Stream(xrange(200)) stream = stream.ints().evens() elements = list(stream) self.assertEqual(len(elements), 100) self.assertTrue(all(item % 2 == 0 for item in elements))
def test_regexp(self): stream = Stream(str(item) for item in xrange(1000)) stream = stream.regexp(r"^10*$") stream = stream.ints() self.assertListEqual(list(stream), [1, 10, 100])