diff options
author | Benety Goh <benety@mongodb.com> | 2017-12-21 17:50:40 -0500 |
---|---|---|
committer | Benety Goh <benety@mongodb.com> | 2017-12-26 14:49:32 -0500 |
commit | 9348c9f11174019ee1be93b25c3f44d070194472 (patch) | |
tree | 520fed504f028dc164a08bd22484b43de35d7202 /src/mongo/util/assert_util_test.cpp | |
parent | 7cb2563388f77c7f0fea72811f512321f23096bd (diff) | |
download | mongo-9348c9f11174019ee1be93b25c3f44d070194472.tar.gz |
SERVER-32369 evaluate invariant message before passing to invariantFailedWithMsg()
Diffstat (limited to 'src/mongo/util/assert_util_test.cpp')
-rw-r--r-- | src/mongo/util/assert_util_test.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/mongo/util/assert_util_test.cpp b/src/mongo/util/assert_util_test.cpp index 315e4200d8b..841dc37ba00 100644 --- a/src/mongo/util/assert_util_test.cpp +++ b/src/mongo/util/assert_util_test.cpp @@ -36,6 +36,7 @@ #include "mongo/unittest/death_test.h" #include "mongo/unittest/unittest.h" #include "mongo/util/assert_util.h" +#include "mongo/util/mongoutils/str.h" namespace mongo { namespace { @@ -219,5 +220,29 @@ DEATH_TEST(MassertionTerminationTest, msgasserted, "Terminating with msgasserted msgasserted(40215, "Terminating with msgasserted"); } +// invariant and its friends +DEATH_TEST(InvariantTerminationTest, invariant, "Invariant failure false " __FILE__) { + invariant(false); +} + +DEATH_TEST(InvariantTerminationTest, invariantOK, "Terminating with invariantOK") { + invariantOK(Status(ErrorCodes::InternalError, "Terminating with invariantOK")); +} + +DEATH_TEST(InvariantTerminationTest, + invariantWithStringLiteralMsg, + "Terminating with string literal invariant message") { + const char* msg = "Terminating with string literal invariant message"; + invariant(false, msg); +} + +DEATH_TEST(InvariantTerminationTest, + invariantWithStdStringMsg, + "Terminating with std::string invariant message: 12345") { + const std::string msg = str::stream() << "Terminating with std::string invariant message: " + << 12345; + invariant(false, msg); +} + } // namespace } // namespace mongo |