blob: fc5cf22f339c8e087b4e47fc2beff8f65e0d54c3 (
plain)
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
|
.. _custom-tests:
Add Custom Tests
================
Test
----
In your suite function you can use the ``test`` function. With the
following arguments:
1. Command to be tested (output and status will be compared to bash)
2. A command to setup the sandbox directory where the tested command
will be run
3. List of files to watch (the content of each file will be compared)
.. code:: python
test("echo bonjour je suis") # simple command
test("cat < somefile", setup="echo file content > somefile") # setup
test("ls > somefile", setup="", files=["somefile"]) # watch a file
test("echo $A", exports={"A": "a"}) # export variables
# in the environment
test("echo bonjour", hook=lambda s: s.replace("o", "a")) # pass the shell output
# through a hook function
test("cat < somefile > otherfile",
setup="echo file content > somefile",
files=["otherfile"])
Suite
-----
A test suite is a group of related tests.
.. code:: python
@suite() # @suite(bonus=True) if it's a bonus suite
def suite_yoursuitename(test):
""" a description of the suite """
test(...)
test(...)
test(...)
|