#!/bin/bash # This program will generate test documentation from the robot test cases. # Description of argument(s): # test_dir_path Test directory where robot test cases are available. # test_case_doc_file_path The test case document file path to be stored. function get_parms { # Get program parms. test_dir_path="${1}" ; shift test_case_doc_file_path="${1}" ; shift return 0 } function validate_parms { # Validate program parameters. num_parms="${1}" ; shift (( ${num_parms} == 0 )) && return 0 if [ -z "${test_dir_path}" ] ; then echo "**ERROR** You must provide test directory as the first positional" \ "parameter." >&2 return 1 fi if [ -z "${test_case_doc_file_path}" ] ; then echo "**ERROR** You must provide file path as the second positional" \ "parameter." >&2 return 1 fi return 0 } function generate_all_test_document { # Generate all test case documents local ret_code=0 python -m robot.testdoc tests testsdirectoryTCdocs.html || ret_code=1 python -m robot.testdoc extended extendeddirectoryTCdocs.html || ret_code=1 python -m robot.testdoc gui guidirectoryTCdocs.html || ret_code=1 python -m robot.testdoc systest systestdirectoryTCdocs.html || ret_code=1 python -m robot.testdoc xcat xcatdirectoryTCdocs.html || ret_code=1 python -m robot.testdoc mnfg mnfgdirectoryTCdocs.html || ret_code=1 python -m robot.testdoc tools toolsdirectoryTCdocs.html || ret_code=1 python -m robot.testdoc ras rasdirectoryTCdocs.html || ret_code=1 python -m robot.testdoc secureboot securebootdirectoryTCdocs.html ||\ ret_code=1 python -m robot.testdoc network networkdirectoryTCdocs.html ||\ ret_code=1 return ${ret_code} } function main_function { get_parms "$@" || return 1 validate_parms $# || return 1 if (( ${num_parms} == 0 )) ; then generate_all_test_document || return 1 return 0 fi echo ${test_dir_path} ${test_case_doc_file_path} python -m robot.testdoc ${test_dir_path} ${test_case_doc_file_path}\ || return 1 return 0 } # Main main_function "${@}" rc="${?}" exit "${rc}"