Sivas SRR | 4470957 | 2017-04-28 07:16:46 -0500 | [diff] [blame] | 1 | #!/bin/bash |
| 2 | |
Gunnar Mills | 917ba1a | 2018-04-08 16:42:12 -0500 | [diff] [blame] | 3 | # This program will generate test documentation from the robot test cases. |
Sivas SRR | 4470957 | 2017-04-28 07:16:46 -0500 | [diff] [blame] | 4 | |
| 5 | # Description of argument(s): |
| 6 | # test_dir_path Test directory where robot test cases are available. |
| 7 | # test_case_doc_file_path The test case document file path to be stored. |
| 8 | |
| 9 | |
Sivas SRR | 4470957 | 2017-04-28 07:16:46 -0500 | [diff] [blame] | 10 | function get_parms { |
| 11 | |
| 12 | # Get program parms. |
| 13 | |
| 14 | test_dir_path="${1}" ; shift |
| 15 | test_case_doc_file_path="${1}" ; shift |
| 16 | |
| 17 | return 0 |
| 18 | |
| 19 | } |
Sivas SRR | 4470957 | 2017-04-28 07:16:46 -0500 | [diff] [blame] | 20 | |
| 21 | |
Sivas SRR | 4470957 | 2017-04-28 07:16:46 -0500 | [diff] [blame] | 22 | function validate_parms { |
| 23 | |
| 24 | # Validate program parameters. |
| 25 | |
| 26 | num_parms="${1}" ; shift |
| 27 | |
| 28 | (( ${num_parms} == 0 )) && return 0 |
| 29 | |
| 30 | if [ -z "${test_dir_path}" ] ; then |
| 31 | echo "**ERROR** You must provide test directory as the first positional" \ |
| 32 | "parameter." >&2 |
| 33 | return 1 |
| 34 | fi |
| 35 | |
| 36 | if [ -z "${test_case_doc_file_path}" ] ; then |
| 37 | echo "**ERROR** You must provide file path as the second positional" \ |
| 38 | "parameter." >&2 |
| 39 | return 1 |
| 40 | fi |
| 41 | |
| 42 | return 0 |
| 43 | |
| 44 | } |
Sivas SRR | 4470957 | 2017-04-28 07:16:46 -0500 | [diff] [blame] | 45 | |
| 46 | |
Sivas SRR | 4470957 | 2017-04-28 07:16:46 -0500 | [diff] [blame] | 47 | function generate_all_test_document { |
| 48 | |
| 49 | # Generate all test case documents |
| 50 | |
| 51 | local ret_code=0 |
| 52 | python -m robot.testdoc tests testsdirectoryTCdocs.html || ret_code=1 |
| 53 | python -m robot.testdoc extended extendeddirectoryTCdocs.html || ret_code=1 |
| 54 | python -m robot.testdoc gui guidirectoryTCdocs.html || ret_code=1 |
| 55 | python -m robot.testdoc systest systestdirectoryTCdocs.html || ret_code=1 |
Sivas SRR | 9bd2f83 | 2017-05-29 10:57:57 -0500 | [diff] [blame] | 56 | python -m robot.testdoc xcat xcatdirectoryTCdocs.html || ret_code=1 |
| 57 | python -m robot.testdoc mnfg mnfgdirectoryTCdocs.html || ret_code=1 |
Sivas SRR | b35dd6a | 2017-06-06 02:56:51 -0500 | [diff] [blame] | 58 | python -m robot.testdoc tools toolsdirectoryTCdocs.html || ret_code=1 |
Sivas SRR | 3cd5a73 | 2018-04-18 10:08:15 -0500 | [diff] [blame] | 59 | python -m robot.testdoc ras rasdirectoryTCdocs.html || ret_code=1 |
| 60 | python -m robot.testdoc secureboot securebootdirectoryTCdocs.html ||\ |
| 61 | ret_code=1 |
Sivas SRR | 4470957 | 2017-04-28 07:16:46 -0500 | [diff] [blame] | 62 | |
| 63 | return ${ret_code} |
| 64 | } |
Sivas SRR | 4470957 | 2017-04-28 07:16:46 -0500 | [diff] [blame] | 65 | |
| 66 | |
Sivas SRR | 4470957 | 2017-04-28 07:16:46 -0500 | [diff] [blame] | 67 | function main_function { |
| 68 | |
| 69 | get_parms "$@" || return 1 |
| 70 | |
| 71 | validate_parms $# || return 1 |
| 72 | |
| 73 | if (( ${num_parms} == 0 )) ; then |
| 74 | generate_all_test_document || return 1 |
| 75 | return 0 |
| 76 | fi |
| 77 | |
| 78 | echo ${test_dir_path} ${test_case_doc_file_path} |
| 79 | python -m robot.testdoc ${test_dir_path} ${test_case_doc_file_path}\ |
| 80 | || return 1 |
| 81 | |
| 82 | return 0 |
| 83 | |
| 84 | } |
Sivas SRR | 4470957 | 2017-04-28 07:16:46 -0500 | [diff] [blame] | 85 | |
| 86 | |
Sivas SRR | 4470957 | 2017-04-28 07:16:46 -0500 | [diff] [blame] | 87 | # Main |
| 88 | |
| 89 | main_function "${@}" |
| 90 | rc="${?}" |
| 91 | exit "${rc}" |
| 92 | |