Beispiel #1
0
 def test_has_next_returns_false_at_end_of_iteration(self):
     peaker = Peaker((x for x in 'ab'))
     self.assertTrue(peaker.has_next())
     peaker.next()
     self.assertTrue(peaker.has_next())
     peaker.next()
     self.assertFalse(peaker.has_next())
Beispiel #2
0
 def test_take_while(self):
     peaker = Peaker((x for x in 'name    1234'))
     name = ''.join(peaker.take_while(str.isalpha))
     self.assertEqual(name, 'name')
     self.assertTrue(peaker.has_next())
     spaces = ''.join(peaker.take_while(str.isspace))
     self.assertEqual(spaces, '    ')
     self.assertTrue(peaker.has_next())
     numbers = ''.join(peaker.take_while(str.isdecimal))
     self.assertEqual(numbers, '1234')
     self.assertFalse(peaker.has_next())
Beispiel #3
0
 def test_description_ends_with_sections(self):
     """Make sure the description section doesn't eat everything."""
     peaker = Peaker(lex('Short description.\n'
                         '\n'
                         'Long Description.\n'
                         '\n'
                         'Returns:\n'
                         '    Nothing!\n'
                         '\n'),
                     lookahead=3)
     parse_description(peaker)
     self.assertTrue(peaker.has_next())
     node = parse_returns(peaker)
     self.assertEqual(
         node.node_type,
         NodeType.RETURNS_SECTION,
     )
Beispiel #4
0
 def test_passing_none_to_peaker_marks_empty(self):
     peaker = Peaker((x for x in []))
     self.assertFalse(peaker.has_next())
Beispiel #5
0
 def test_empty_stream_says_it_has_none(self):
     peaker = Peaker((x for x in ''))
     self.assertFalse(peaker.has_next())