mesonbuild / mesonbuild/meson

TAP Subtests is not supporeted

Open
#15,768 0 comments 1 reaction 0 assignees View on GitHub
enhancement test targets
Dominant language
Python
Stars
6.6k
Forks
1.9k
Avg merge
2d 6h
Merged PRs (30d)
33

Description

**Describe the bug**
TAP 14 specification supports Subtests. But when running a test that uses them causes warning as its not reconized by meson.

**To Reproduce**
```
TAP version 14
1..3
# Subtest: min max
1..4
ok 1 - min
ok 2 - max
ok 3 - global min
ok 4 - global max
ok 1 - min max
# Subtest: traversal
1..4
ok 1 - next
ok 2 - prev
ok 3 - root
ok 4 - slot next
ok 2 - traversal
# Subtest: delete
1..5
ok 1 - leaf
ok 2 - left only
ok 3 - right only
ok 4 - two children
ok 5 - two children successor right
ok 3 - delete
```
A test using TAP 14 subtests.

Its not reconized and the following is warning is emitted.

```
stdout: 4: UNKNOWN: 1..4
stdout: 5: UNKNOWN: ok 1 - min
stdout: 6: UNKNOWN: ok 2 - max
stdout: 7: UNKNOWN: ok 3 - global min
stdout: 8: UNKNOWN: ok 4 - global max
stdout: 11: UNKNOWN: 1..4
stdout: 12: UNKNOWN: ok 1 - next
stdout: 13: UNKNOWN: ok 2 - prev
stdout: 14: UNKNOWN: ok 3 - root
stdout: 15: UNKNOWN: ok 4 - slot next
stdout: 18: UNKNOWN: 1..5
stdout: 19: UNKNOWN: ok 1 - leaf
stdout: 20: UNKNOWN: ok 2 - left only
stdout: 21: UNKNOWN: ok 3 - right only
stdout: 22: UNKNOWN: ok 4 - two children
stdout: 23: UNKNOWN: ok 5 - two children successor right
Unknown TAP output lines have been ignored. Please open a feature request to
implement them, or prefix them with a # if they are not TAP syntax.
```

**Expected behavior**
Either ignore them or treat them as subtests in the output

**system parameters**
meson version - 1.11.1

Contributor guide

Open the contributing guide

Research direction

Start by locating Meson's TAP output parser or test-output handling and reproduce the supplied TAP 14 subtest example. Trace how indented plan and result lines are classified, then make the completed behavior either recognize subtests or ignore their lines without UNKNOWN warnings; add or update coverage for this example.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system, testing-qa
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.