- /* iterate through all tests to see how much failed */
- xbt_dynar_foreach(suite->units, it_unit, unit) {
- /* init unit case counters */
- unit->nb_tests = 0;
- unit->test_ignore = 0;
- unit->test_failed = 0;
- unit->test_expect = 0;
-
- /* run the test case function */
- _xbt_test_current_unit = unit;
- unit->func();
-
- /* iterate through all performed tests to determine status */
- xbt_dynar_foreach(unit->tests,it_test, test) {
- if (test->ignored) {
- unit->test_ignore++;
- } else {
- unit->nb_tests++;
-
- if ( test->failed && !test->expected_failure) unit->test_failed++;
- if (!test->failed && test->expected_failure) unit->test_failed++;
- if (test->expected_failure)
- unit->test_expect++;
- }
- }
-
- /* Accumulate test counts into the suite */
- suite->nb_tests += unit->nb_tests;
- suite->test_failed += unit->test_failed;
- suite->test_ignore += unit->test_ignore;
- suite->test_expect += unit->test_expect;
-
- _xbt_test_nb_tests += unit->nb_tests;
- _xbt_test_test_failed += unit->test_failed;
- _xbt_test_test_ignore += unit->test_ignore;
- _xbt_test_test_expect += unit->test_expect;
-
- /* What's the conclusion of this test anyway? */
- if (unit->nb_tests) {
- suite->nb_units++;
- if (unit->test_failed)
- suite->unit_failed++;
- } else {
- suite->unit_ignore++;
- }
- }
- _xbt_test_nb_units += suite->nb_units;
- _xbt_test_unit_failed += suite->unit_failed;
- _xbt_test_unit_ignore += suite->unit_ignore;
-
- if (suite->nb_units) {
- _xbt_test_nb_suites++;
- if (suite->test_failed)
- _xbt_test_suite_failed++;
- } else {
- _xbt_test_suite_ignore++;
- }
-