diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2016-09-02 00:42:43 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2016-09-02 00:42:43 -0700 |
commit | 60c566eaacbae981c425d4a12abafb56506bacfa (patch) | |
tree | 46a23d059389cc12e6cfb6853c1075e899b84d3b | |
parent | 36d74808d9d8fdb9c38c8164d34de24dd7968b1b (diff) | |
download | mu-60c566eaacbae981c425d4a12abafb56506bacfa.tar.gz |
3291
Stop double-counting failing tests in some situations.
-rw-r--r-- | 002test.cc | 4 | ||||
-rw-r--r-- | 003trace.cc | 5 |
2 files changed, 5 insertions, 4 deletions
diff --git a/002test.cc b/002test.cc index b9cb0e15..a07d5d9f 100644 --- a/002test.cc +++ b/002test.cc @@ -23,7 +23,7 @@ long Num_failures = 0; :(before "End Includes") #define CHECK(X) \ - if (!(X)) { \ + if (Passed && !(X)) { \ ++Num_failures; \ cerr << "\nF - " << __FUNCTION__ << "(" << __FILE__ << ":" << __LINE__ << "): " << #X << '\n'; \ Passed = false; \ @@ -31,7 +31,7 @@ long Num_failures = 0; } #define CHECK_EQ(X, Y) \ - if ((X) != (Y)) { \ + if (Passed && (X) != (Y)) { \ ++Num_failures; \ cerr << "\nF - " << __FUNCTION__ << "(" << __FILE__ << ":" << __LINE__ << "): " << #X << " == " << #Y << '\n'; \ cerr << " got " << (X) << '\n'; /* BEWARE: multiple eval */ \ diff --git a/003trace.cc b/003trace.cc index 3f08aa40..7522fc90 100644 --- a/003trace.cc +++ b/003trace.cc @@ -216,7 +216,7 @@ START_TRACING_UNTIL_END_OF_SCOPE #define CHECK_TRACE_CONTAINS_ERROR() CHECK(trace_count("error") > 0) #define CHECK_TRACE_DOESNT_CONTAIN_ERROR() \ - if (trace_count("error") > 0) { \ + if (Passed && trace_count("error") > 0) { \ ++Num_failures; \ cerr << "\nF - " << __FUNCTION__ << "(" << __FILE__ << ":" << __LINE__ << "): unexpected errors\n"; \ DUMP("error"); \ @@ -225,7 +225,7 @@ START_TRACING_UNTIL_END_OF_SCOPE } #define CHECK_TRACE_COUNT(label, count) \ - if (trace_count(label) != (count)) { \ + if (Passed && trace_count(label) != (count)) { \ ++Num_failures; \ cerr << "\nF - " << __FUNCTION__ << "(" << __FILE__ << ":" << __LINE__ << "): trace_count of " << label << " should be " << count << '\n'; \ cerr << " got " << trace_count(label) << '\n'; /* multiple eval */ \ @@ -238,6 +238,7 @@ START_TRACING_UNTIL_END_OF_SCOPE :(code) bool check_trace_contents(string FUNCTION, string FILE, int LINE, string expected) { + if (!Passed) return false; if (!Trace_stream) return false; vector<string> expected_lines = split(expected, ""); int curr_expected_line = 0; |