-
-
Notifications
You must be signed in to change notification settings - Fork 2
shelldoctest is Doctest/UnitTest for shell (mirror of Google Code project)
License
JNRowe/shell-doctest
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
======== Overview ======== shelldoctest is Doctest/UnitTest for shell. Doctest for shell ================= Usage ----- test.py:: #!/usr/bin/env python """ $ echo TEST TEST $ LANG=C date -u -r 0 Thu Jan 1 00:00:00 UTC 1970 """ if __name__ == "__main__": import shelldoctest shelldoctest.testmod() Shell Doctest Syntax -------------------- Basic:: $ <COMMAND> <RESPONSE> Multi Lines:: $ <COMMAND> . <COMMAND> <RESPONSE> <RESPONSE> with Label:: [<LABEL>] $ <COMMAND> <RESPONSE> Run on Remote Host:: @<HOSTNAME> $ <COMMAND> <RESPONSE> [<LABEL>] @<HOSTNAME> $ <COMMAND> <RESPONSE> Run by User:: <USERNAME>@<HOSTNAME> $ <COMMAND> <RESPONSE> [<LABEL>] <USERNAME>@<HOSTNAME> $ <COMMAND> <RESPONSE> Checking STDERR:: $ <COMMAND> (<RETURNCODE>)<STDERR-RESPONSE> <STDOUT-RESPONSE> Management Tool --------------- `shell-doctest` command:: $ shell-doctest test <PATH-TO-MODULE> ... $ shell-doctest test <LABEL> ... $ shell-doctest test <PATH-TO-MODULE> ... <LABEL> ... Examples ~~~~~~~~ test.py:: """ $ echo TEST TEST [#1] $ echo TEST1 TEST1 [#2] $ echo TEST2 TEST2 """ Run TEST:: $ shell-doctest test ./test.py $ shell-doctest --verbose=2 test ./test.py Module:test.py Label:None Label:#1 Label:#2 $ shell-doctest --verbose=2 test ./test.py #2 #1 Module:test.py Label:#2 Label:#1 $ shell-doctest --verbose=3 test ./test.py #2 New verbose level is 3 Module:manage.py Label:#2 Trying: echo TEST2 Expecting: TEST2 ok 1 items passed all tests: 1 tests in manage 1 tests in 3 items. 1 passed and 0 failed. Test passed. UnitTest ======== :: from doctest import ELLIPSIS from shelldoctest.shellunittest import Connection, TestCase host = "localhost:22" class MyTest(TestCase): c1 = Connection(host) c2 = Connection(host) def test(self): self.assertOutput(self.c1, "pwd", "/.../...\n", ELLIPSIS) self.c1("cd /", None) self.assertOutput(self.c2, "pwd", "/.../...\n", ELLIPSIS) self.assertOutput(self.c1, "pwd", "/\n")
About
shelldoctest is Doctest/UnitTest for shell (mirror of Google Code project)
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published