Some time between 0.56 and 0.57 the TAP parser broke when a test exits with a nonzero status. The TAP protocol does not specify this behaviour - giving latitude to implementers, and meson's previous behaviour was to report the exit status gracefully. This patch restores the old behaviour and adds a regression testpull/8390/head
parent
90a7de3f2b
commit
79f7328d6a
3 changed files with 12 additions and 1 deletions
@ -1,7 +1,9 @@ |
|||||||
project('test features', 'c') |
project('test features', 'c') |
||||||
|
|
||||||
tester = executable('tester', 'tester.c') |
tester = executable('tester', 'tester.c') |
||||||
test('nonzero return code', tester, args : [], protocol: 'tap') |
test_with_status = executable('test-with-status', 'tester_with_status.c') |
||||||
|
test('nonzero return code no tests', tester, args : [], protocol: 'tap') |
||||||
|
test('nonzero return code with tests', test_with_status, protocol: 'tap') |
||||||
test('missing test', tester, args : ['1..1'], protocol: 'tap') |
test('missing test', tester, args : ['1..1'], protocol: 'tap') |
||||||
test('incorrect skip', tester, args : ['1..1 # skip\nok 1'], protocol: 'tap') |
test('incorrect skip', tester, args : ['1..1 # skip\nok 1'], protocol: 'tap') |
||||||
test('partially skipped', tester, args : ['not ok 1\nok 2 # skip'], protocol: 'tap') |
test('partially skipped', tester, args : ['not ok 1\nok 2 # skip'], protocol: 'tap') |
||||||
|
@ -0,0 +1,8 @@ |
|||||||
|
#include <stdio.h> |
||||||
|
#include <stdlib.h> |
||||||
|
|
||||||
|
int main(int argc, char **argv) { |
||||||
|
puts("1..1"); |
||||||
|
puts("not ok 1 - some test"); |
||||||
|
return 2; |
||||||
|
} |
Loading…
Reference in new issue