File: generate_subunit.rst

package info (click to toggle)
python-os-testr 3.0.0-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 376 kB
  • sloc: python: 1,153; sh: 29; makefile: 22
file content (52 lines) | stat: -rw-r--r-- 2,064 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
.. generate_subunit:

generate-subunit
================

generate-subunit is a simple tool to, as its name implies, generate a subunit
stream. It will generate a stream with a single test result to STDOUT. The
subunit protocol lets you concatenate multiple streams together so if you want
to generate a stream with multiple just append the output of multiple executions
of generate-subunit.

Summary
-------
::

    generate-subunit timestamp secs [status] [test_id]

Usage
-----

generate-subunit has 2 mandatory arguments. These are needed to specify when
the "test" started running and how long it took. The first argument is a POSIX
timestamp (which can returned by the date util using ``date +%s``) for when it
started running. The second argument is the number of seconds it took for the
execution to finish. For example::

    $ generate-subunit $(date +%s) 42

will generate a stream with the test_id 'devstack' successfully running for 42
secs starting when the command was executed. This leads into the 2 optional
arguments. The first optional argument is for specifying the status. This must
be the 3rd argument when calling generate-subunit. Valid status options can
be found in the `testtools documentation`_. If status is not specified it will
default to success. For example::

    $ generate-subunit $(date +%s) 42 fail

will be the same as the previous example except that it marks the test as
failing.

.. _testtools documentation: http://testtools.readthedocs.io/en/latest/api.html#testtools.StreamResult.status

The other optional argument is the test_id (aka test name) and is used to
identify the "test" being run. For better or worse this defaults to *devstack*.
(which is an artifact of why this tool was originally created) Note, this must
be the 4th argument when calling generate-subunit. This means you also must
specify a status if you want to set your own test_id. For example::

    $ generate-subunit %(date +%s) 42 fail my_little_test

will generate a subunit stream as before except instead the test will be named
my_little_test.