Add a common TestEventListener for the error queue.
Replicate the logic in the AllTests targets to dump the error queue on failure. GTest seems to print to stdout, so we do here too. BUG=129 Change-Id: I623b695fb9a474945834c3653728f54e5b122187 Reviewed-on: https://boringssl-review.googlesource.com/13623 Reviewed-by: David Benjamin <davidben@google.com> Commit-Queue: David Benjamin <davidben@google.com> CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
This commit is contained in:
parent
f0d8e22078
commit
6b0edfb9e6
@ -86,7 +86,6 @@ TEST(DHTest, AllTests) {
|
||||
!TestBadY() ||
|
||||
!TestASN1() ||
|
||||
!TestRFC3526()) {
|
||||
ERR_print_errors_fp(stderr);
|
||||
ADD_FAILURE() << "Tests failed.";
|
||||
}
|
||||
}
|
||||
|
@ -312,7 +312,6 @@ TEST(DSATest, AllTests) {
|
||||
!TestVerify(fips_sig_extra, sizeof(fips_sig_extra), -1) ||
|
||||
!TestVerify(fips_sig_bad_length, sizeof(fips_sig_bad_length), -1) ||
|
||||
!TestVerify(fips_sig_bad_r, sizeof(fips_sig_bad_r), 0)) {
|
||||
ERR_print_errors_fp(stderr);
|
||||
ADD_FAILURE() << "Tests failed";
|
||||
}
|
||||
}
|
||||
|
@ -14,10 +14,35 @@
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include <openssl/err.h>
|
||||
#include <openssl/crypto.h>
|
||||
|
||||
namespace {
|
||||
|
||||
class ErrorTestEventListener : public testing::EmptyTestEventListener {
|
||||
public:
|
||||
ErrorTestEventListener() {}
|
||||
~ErrorTestEventListener() override {}
|
||||
|
||||
void OnTestEnd(const testing::TestInfo &test_info) override {
|
||||
// If the test failed, print any errors left in the error queue.
|
||||
if (test_info.result()->Failed()) {
|
||||
ERR_print_errors_fp(stdout);
|
||||
}
|
||||
|
||||
// Clean up the error queue for the next run.
|
||||
ERR_clear_error();
|
||||
}
|
||||
};
|
||||
|
||||
} // namespace
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
CRYPTO_library_init();
|
||||
testing::InitGoogleTest(&argc, argv);
|
||||
testing::UnitTest::GetInstance()->listeners().Append(
|
||||
new ErrorTestEventListener);
|
||||
return RUN_ALL_TESTS();
|
||||
}
|
||||
|
@ -3101,7 +3101,6 @@ TEST(SSLTest, AllTests) {
|
||||
!ForEachVersion(TestSSLClearSessionResumption) ||
|
||||
!ForEachVersion(TestAutoChain) ||
|
||||
!ForEachVersion(TestSSLWriteRetry)) {
|
||||
ERR_print_errors_fp(stderr);
|
||||
ADD_FAILURE() << "Tests failed";
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user