7 d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZm Z m
Z
mZmZm
Z
d dlZd dlmZ dZn
# e$ r dZY nw xY w G d d ZdS )
N)StringIO) Directive)Bail
DiagnosticPlanResultUnknownVersion)peekableTFc e Zd ZdZdZ ej dez ej Z ej dez ej Z ej dej Z
ej d Z ej dej Z ej d Z
ej d Z ej d
ZdZd Zd
Zd Zd ZddZd ZddZd Zd ZdS )Parserz!A parser for TAP files and lines.a
\s* # Optional whitespace.
(?P\d*) # Optional test number.
\s* # Optional whitespace.
(?P[^#]*) # Optional description before #.
\#? # Optional directive marker.
\s* # Optional whitespace.
(?P.*) # Optional directive text.
z^okz^not\ oka~
^1..(?P\d+) # Match the plan details.
[^#]* # Consume any non-hash character to confirm only
# directives appear with the plan details.
\#? # Optional directive marker.
\s* # Optional whitespace.
(?P.*) # Optional directive text.
z^#zq
^Bail\ out!
\s* # Optional whitespace.
(?P.*) # Optional reason.
z^TAP version (?P\d+)$z^(?P\s+)-z
^\s+\.\.\.
c F | t | S )zParse a TAP file to an iterable of tap.line.Line objects.
This is a generator method that will yield an object for each
parsed line. The file given by `filename` is assumed to exist.
)parseopen)selffilenames \/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib/python3.11/site-packages/tap/parser.py
parse_filezParser.parse_file<