summaryrefslogtreecommitdiff
path: root/pexpect/DEVELOPERS
blob: 8f9aa439b215583c2dae1945347647e3198a64b8 (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
44
45
46
47
48
49
50
51
52

To edit and test code and to run the Pyunit tests you need to source the
environment file provided in the root of the development directory.
For example:

    . test.env

Then to run unit tests run the testall.py script under the tools/ directory.
For example:

    ./tools/testall.py

The test.env environment file sets the PYTHONPATH to the Pexpect development
root directory. This way the unit tests and python interpreter will import the
development version of Pexpect instead of any older versions that you may have
installed on the system.

The Pyunit tests are all located in the tests/ directory. To add a new unit
test all you have to do is create the file in the tests/ directory with a
filename in this format:

    test_*.py

The testall.py script in the tools/ directory will automatically add all
test_*.py files to the test suite. To create a new unit test follow the example
of one of the other test_*.py scripts. Basically, a new unit test will follow
this template:

<pre>
#!/usr/bin/env python
import pexpect
import unittest
import PexpectTestCase

# 1. Derive your test case class from PexpectTestCase.PexpectTestCase.
# 2. At the end of this script add your test case class to the suite using
#    unittest.MakeSuite.
# 3. All test case methods should be named like test_*.
class TestCaseFoo (PexpectTestCase.PexpectTestCase):

    def test_case (self):
        assert (False), "This is an example template."

    def test_case_something_else (self):
        assert (False), "This is an example template."

if __name__ == '__main__':
    unittest.main()

suite = unittest.makeSuite(TestCaseFoo,'test')
</pre>