14470957eSSivas SRR#!/bin/bash
24470957eSSivas SRR
34470957eSSivas SRR# This program will generate test documenation from the robot test cases.
44470957eSSivas SRR
54470957eSSivas SRR# Description of argument(s):
64470957eSSivas SRR# test_dir_path            Test directory where robot test cases are available.
74470957eSSivas SRR# test_case_doc_file_path  The test case document file path to be stored.
84470957eSSivas SRR
94470957eSSivas SRR
104470957eSSivas SRR###############################################################################
114470957eSSivas SRRfunction get_parms {
124470957eSSivas SRR
134470957eSSivas SRR  # Get program parms.
144470957eSSivas SRR
154470957eSSivas SRR  test_dir_path="${1}" ; shift
164470957eSSivas SRR  test_case_doc_file_path="${1}" ; shift
174470957eSSivas SRR
184470957eSSivas SRR  return 0
194470957eSSivas SRR
204470957eSSivas SRR}
214470957eSSivas SRR###############################################################################
224470957eSSivas SRR
234470957eSSivas SRR
244470957eSSivas SRR###############################################################################
254470957eSSivas SRRfunction validate_parms {
264470957eSSivas SRR
274470957eSSivas SRR  # Validate program parameters.
284470957eSSivas SRR
294470957eSSivas SRR  num_parms="${1}" ; shift
304470957eSSivas SRR
314470957eSSivas SRR  (( ${num_parms} == 0 )) && return 0
324470957eSSivas SRR
334470957eSSivas SRR  if [ -z "${test_dir_path}" ] ; then
344470957eSSivas SRR    echo "**ERROR** You must provide test directory as the first positional" \
354470957eSSivas SRR         "parameter." >&2
364470957eSSivas SRR    return 1
374470957eSSivas SRR  fi
384470957eSSivas SRR
394470957eSSivas SRR  if [ -z "${test_case_doc_file_path}" ] ; then
404470957eSSivas SRR    echo "**ERROR** You must provide file path as the second positional" \
414470957eSSivas SRR         "parameter." >&2
424470957eSSivas SRR    return 1
434470957eSSivas SRR  fi
444470957eSSivas SRR
454470957eSSivas SRR  return 0
464470957eSSivas SRR
474470957eSSivas SRR}
484470957eSSivas SRR###############################################################################
494470957eSSivas SRR
504470957eSSivas SRR
514470957eSSivas SRR###############################################################################
524470957eSSivas SRRfunction generate_all_test_document {
534470957eSSivas SRR
544470957eSSivas SRR  # Generate all test case documents
554470957eSSivas SRR
564470957eSSivas SRR  local ret_code=0
574470957eSSivas SRR  python -m robot.testdoc tests testsdirectoryTCdocs.html || ret_code=1
584470957eSSivas SRR  python -m robot.testdoc extended extendeddirectoryTCdocs.html || ret_code=1
594470957eSSivas SRR  python -m robot.testdoc gui guidirectoryTCdocs.html || ret_code=1
604470957eSSivas SRR  python -m robot.testdoc systest systestdirectoryTCdocs.html || ret_code=1
61*9bd2f839SSivas SRR  python -m robot.testdoc xcat xcatdirectoryTCdocs.html || ret_code=1
62*9bd2f839SSivas SRR  python -m robot.testdoc mnfg mnfgdirectoryTCdocs.html || ret_code=1
634470957eSSivas SRR
644470957eSSivas SRR  return ${ret_code}
654470957eSSivas SRR}
664470957eSSivas SRR###############################################################################
674470957eSSivas SRR
684470957eSSivas SRR
694470957eSSivas SRR###############################################################################
704470957eSSivas SRRfunction main_function {
714470957eSSivas SRR
724470957eSSivas SRR  get_parms "$@" || return 1
734470957eSSivas SRR
744470957eSSivas SRR  validate_parms $# || return 1
754470957eSSivas SRR
764470957eSSivas SRR  if (( ${num_parms} == 0 )) ; then
774470957eSSivas SRR    generate_all_test_document || return 1
784470957eSSivas SRR    return 0
794470957eSSivas SRR  fi
804470957eSSivas SRR
814470957eSSivas SRR  echo ${test_dir_path} ${test_case_doc_file_path}
824470957eSSivas SRR  python -m robot.testdoc ${test_dir_path} ${test_case_doc_file_path}\
834470957eSSivas SRR    || return 1
844470957eSSivas SRR
854470957eSSivas SRR  return 0
864470957eSSivas SRR
874470957eSSivas SRR}
884470957eSSivas SRR###############################################################################
894470957eSSivas SRR
904470957eSSivas SRR
914470957eSSivas SRR###############################################################################
924470957eSSivas SRR# Main
934470957eSSivas SRR
944470957eSSivas SRR  main_function "${@}"
954470957eSSivas SRR  rc="${?}"
964470957eSSivas SRR  exit "${rc}"
974470957eSSivas SRR
984470957eSSivas SRR###############################################################################
99