view tests/_tsetup.py @ 34:1f741934205e

Begin a new Pseudocode lexer using numbers and strings from Python
author Franz Glasner <fzglas.hg@dom66.de>
date Tue, 21 Apr 2026 19:40:08 +0200
parents de1f67eff9d5
children 39151225fb84
line wrap: on
line source

# -*- coding: utf-8 -*-
# :-
# SPDX-FileCopyrightText: © 2026 Franz Glasner
# SPDX-License-Identifier: MIT
r"""Automatic unittest context configuration.

Side-effects of import configure the test environment!

"""

__all__ = [
    "PROJECTDIR",
    "LEXERCLASS",
    "FRLEXERCLASS",
    "LEXERFILENAME",
    "FRLEXERFILENAME",
    "TESTSNIPPETSDIR",
]


import logging
import os
import sys


PROJECTDIR = os.path.abspath(
        os.path.normpath(os.path.join(os.path.dirname(__file__), "..")))
sys.path.insert(0, PROJECTDIR)
FRLEXERFILENAME = os.path.join(PROJECTDIR,
                               "pygments_lexer_pseudocode2",
                               "fr_pseudocode.py")
FRLEXERCLASS = "FrPseudocodeLexer"
LEXERFILENAME = os.path.join(PROJECTDIR,
                             "pygments_lexer_pseudocode2",
                             "pseudocode.py")
LEXERCLASS = "PseudocodeLexer"
TESTSNIPPETSDIR = os.path.join(
    os.path.abspath(os.path.dirname(__file__)),
    "snippets")


# Setup logging for the unittests: use a known fixed format w/o time
logging.captureWarnings(True)
logging.basicConfig(
    level=logging.DEBUG,
    style='%',
    format="[%(name)s][%(filename)s:%(lineno)d:%(funcName)s][%(levelname)s] %(message)s")        # noqa: E501 (line too long)