Subject: bug#20693: SKIP not counted in TAP

From: "Arthur Schwarz" <[email-masked]>
Date: Fri, 29 May 2015 15:15:14 -0700

-----Original Message-----In a way, because...

> skip
> ok
> PASS: test2.tap 1
> not ok
> FAIL: test2.tap 2
> 1..2

... it is your program's output that does not follow the specification.

There are two basic styles of skipping in TAP.  You can skip a single
test result:

  ok 1 # skip reason

or you can use the plan line to indicate that the entire test program is
to be skipped:

  1..0 # skip reason

Sorry to be such a pimple, but I just tried:

========== script ==========

#!/bin/bash
echo test2.tap "$# [ $@ ]"   >> test2.log
echo I am a tap script         >> test2.log
echo 1..3
echo ok
echo not ok
echo ok 3 # skip reason 

========== which yielded ==========

PASS: test2.tap 1
FAIL: test2.tap 2
PASS: test2.tap 3
=================================
Testsuite summary for test 0.5
=================================
# TOTAL: 3
# PASS:  2
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0
================================
See src/test-suite.log
================================

========== and  ==========

I would have expected a 'skip' not a PASS! And the comment isn't output w/wo
TAP_LOG_DRIVER_FLAGS=--comments. However, 1..0 works if there is no test
output, as in the output only containing 1..0 and nothing else. More than
one test yields errors (# UNPLANNED).

If this is an error on my part (which it may well be) then I am confused
about your comment above.