def test_with_keyword_trailing_whitespace(self): self.assertEqual( { 'name': lexer.Token('N', 'foo', at(1, 1)), 'keyword': lexer.Token('K', ':bar', at(1, 5)), 'rest': lexer.Token('S', None, at(1, 9)), }, lexer.lex_name(self.tok('foo :bar ')))
def test_name_only_trailing_whitespace(self): self.assertEqual( { 'name': lexer.Token('N', 'foo', at(1, 1)), 'keyword': lexer.Token('K', None, at(1, 4)), 'rest': lexer.Token('S', None, at(1, 4)), }, lexer.lex_name(self.tok('foo ')))
def test_trailing_whitespace(self): self.assertEqual( { 'name': lexer.Token('N', 'foo', at(1, 4)), 'keyword': lexer.Token('K', ':bar', at(1, 8)), 'rest': lexer.Token('S', 'other stuff', at(1, 13)), }, lexer.lex_name(self.tok(' foo :bar other stuff ')))
def test_with_rest(self): self.assertEqual( { 'name': lexer.Token('N', 'foo', at(1, 1)), 'keyword': lexer.Token('K', ':bar', at(1, 5)), 'rest': lexer.Token('S', 'other stuff', at(1, 10)), }, lexer.lex_name(self.tok('foo :bar other stuff')))
def test_name_rest_no_keyword(self): self.assertEqual( { 'name': lexer.Token('N', 'foo', at(1, 1)), 'keyword': lexer.Token('K', None, at(1, 5)), 'rest': lexer.Token('S', 'other stuff', at(1, 5)), }, lexer.lex_name(self.tok('foo other stuff')))
def test_empty(self): self.assertIsNone(lexer.lex_name(self.tok('')))