runtests.sh 2.84 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/bin/bash

# Executes the samples and tests for the Google Test Framework

# Help the dynamic linker find the path to the framework 
export DYLD_FRAMEWORK_PATH=$BUILT_PRODUCTS_DIR

# Create an array of test executables
test_executables=("$BUILT_PRODUCTS_DIR/sample1_unittest"
                  "$BUILT_PRODUCTS_DIR/sample2_unittest"
                  "$BUILT_PRODUCTS_DIR/sample3_unittest"
                  "$BUILT_PRODUCTS_DIR/sample4_unittest"
                  "$BUILT_PRODUCTS_DIR/sample5_unittest"
                  "$BUILT_PRODUCTS_DIR/sample6_unittest"
15
16
                  "$BUILT_PRODUCTS_DIR/sample7_unittest"
                  "$BUILT_PRODUCTS_DIR/sample8_unittest"
17
18

                  "$BUILT_PRODUCTS_DIR/gtest-death-test_test"
19
                  "$BUILT_PRODUCTS_DIR/gtest_environment_test"
20
                  "$BUILT_PRODUCTS_DIR/gtest-filepath_test"
21
22
                  "$BUILT_PRODUCTS_DIR/gtest-linked_ptr_test"
                  "$BUILT_PRODUCTS_DIR/gtest_main_unittest"
23
                  "$BUILT_PRODUCTS_DIR/gtest-message_test"
24
                  "$BUILT_PRODUCTS_DIR/gtest_no_test_unittest"
25
                  "$BUILT_PRODUCTS_DIR/gtest-options_test"
26
27
                  "$BUILT_PRODUCTS_DIR/gtest-param-test_test"
                  "$BUILT_PRODUCTS_DIR/gtest-port_test"
28
29
30
                  "$BUILT_PRODUCTS_DIR/gtest_pred_impl_unittest"
                  "$BUILT_PRODUCTS_DIR/gtest_prod_test"
                  "$BUILT_PRODUCTS_DIR/gtest_repeat_test"
shiqian's avatar
shiqian committed
31
                  "$BUILT_PRODUCTS_DIR/gtest_sole_header_test"
32
                  "$BUILT_PRODUCTS_DIR/gtest_stress_test"
shiqian's avatar
shiqian committed
33
                  "$BUILT_PRODUCTS_DIR/gtest_test_part_test"
34
                  "$BUILT_PRODUCTS_DIR/gtest-typed-test_test"
35
                  "$BUILT_PRODUCTS_DIR/gtest_unittest"
36

37
                  "$BUILT_PRODUCTS_DIR/gtest_break_on_failure_unittest.py"
38
39
40
41
                  "$BUILT_PRODUCTS_DIR/gtest_color_test.py"
                  "$BUILT_PRODUCTS_DIR/gtest_env_var_test.py"
                  "$BUILT_PRODUCTS_DIR/gtest_filter_unittest.py"
                  "$BUILT_PRODUCTS_DIR/gtest_list_tests_unittest.py"
42
                  "$BUILT_PRODUCTS_DIR/gtest_output_test.py"
43
                  "$BUILT_PRODUCTS_DIR/gtest_xml_outfiles_test.py"
44
                  "$BUILT_PRODUCTS_DIR/gtest_xml_output_unittest.py"
45
46
47
48
49
50
                  "$BUILT_PRODUCTS_DIR/gtest_uninitialized_test.py"
)

# Now execute each one in turn keeping track of how many succeeded and failed. 
succeeded=0
failed=0
shiqian's avatar
shiqian committed
51
failed_list=()
52
53
54
55
56
57
58
for test in ${test_executables[*]}; do
  "$test"
  result=$?
  if [ $result -eq 0 ]; then
    succeeded=$(( $succeeded + 1 ))
  else
    failed=$(( failed + 1 ))
shiqian's avatar
shiqian committed
59
    failed_list="$failed_list $test"
60
61
62
63
64
  fi
done

# Report the successes and failures to the console
echo "Tests complete with $succeeded successes and $failed failures."
shiqian's avatar
shiqian committed
65
66
67
68
if [ $failed -ne 0 ]; then
  echo "The following tests failed:"
  echo $failed_list
fi
69
exit $failed