Mercurial > hgrepos > Python > libs > pygments-lexer-pseudocode2
view tests/_testhelper.py @ 56:661461fb4dfc
Make the "py-name" rules parameterized: allow to provide the token type.
For this to work the implemting function must be global, because the
access to the class is not yet possible at construction time.
So consistently make some previons LexBase members module globals.
Make some LexBase members module globals consistently.
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Mon, 27 Apr 2026 12:37:27 +0200 |
| parents | 859ab8abce0a |
| children |
line wrap: on
line source
# -*- coding: utf-8 -*- # :- # SPDX-FileCopyrightText: © 2026 Franz Glasner # SPDX-License-Identifier: MIT # :- """Test helper""" __all__ = ["TokenAssertHelper"] from pygments.token import Token, is_token_subtype, string_to_tokentype class TokenAssertHelper(object): """Mixin to test for token stream equality""" def assertTokenEqual(self, tok_or_str, txt, token): if is_token_subtype(tok_or_str, Token): t = tok_or_str else: t = string_to_tokentype(tok_or_str) self.assertEqual((t, txt), token) def assertNextTokenEqual(self, tok_or_str, txt, tokens): self.assertTokenEqual(tok_or_str, txt, next(tokens)) def assertTokenStreamEqual(self, expected_tokens, given_tokens): for tok, txt in expected_tokens: self.assertNextTokenEqual(tok, txt, given_tokens) def assertTokenStreamEqualComplete(self, expected_tokens, given_tokens): self.assertTokenStreamEqual(expected_tokens, given_tokens) self.assertRaises(StopIteration, next, given_tokens)
