#!/bin/bash set -u declare TestHome=/p4/sdp/test/bsw #------------------------------------------------------------------------------ # Usage: # To see a list of test groups: # ./r ls # # To run any single test group, specify the test group name (as displayed by # ./r ls). For example, to run the Usage test group, do: # ./r Usage # # To run all tests groups, do: # ./r declare TestGroup= if [[ "${1:-}" ]]; then case "$1" in ls|list) grep -Ev '^$|^\s|^#' cli_tests.cfg |cut -d'|' -f1|uniq exit 2 ;; *) TestGroup="$1" ;; esac fi cd "$TestHome" || { echo -e "\\nError: Could not do: cd $TestHome"; exit 1; } if [[ -n "$TestGroup" ]]; then "$TestHome/run_cli_tests.sh" -cd /p4/sdp/test/bsw -no_env -e -g "$TestGroup" else "$TestHome/run_cli_tests.sh" -cd /p4/sdp/test/bsw -no_env -e fi echo Summary: grep -E '^(PASS|FAIL) Test ' /tmp/run_cli_tests.log ### TO DO: Consider moving this logic to scan for unreported errors into the run_cli_tests.sh script itself. echo Scan for unreported errors: grep -E '^\w+:' /tmp/run_cli_tests.log | grep -Ev '^(Bogus|C|Calling|Comments|DEBUG|DESC.*|Diagnostics|Error|EXAMPLE.*|Executing|Get|Hit|https|info|NO_OP|OPTION.*|p4d_edge_syd|p4d_fs_nyc|p4d_ha_bos|p4d_ha_edge_syd|PASS|Protections|Running|See|SUCCESS|TEST_EXIT_CODE|Update|TG|Verified):' | grep -Ev '^exit: 0' | grep -v '^EXIT_CODE: 0'