summaryrefslogtreecommitdiff
path: root/src/mongo/util/assert_util_test.cpp
diff options
context:
space:
mode:
authorBenety Goh <benety@mongodb.com>2017-12-21 17:50:40 -0500
committerBenety Goh <benety@mongodb.com>2017-12-26 14:49:32 -0500
commit9348c9f11174019ee1be93b25c3f44d070194472 (patch)
tree520fed504f028dc164a08bd22484b43de35d7202 /src/mongo/util/assert_util_test.cpp
parent7cb2563388f77c7f0fea72811f512321f23096bd (diff)
downloadmongo-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.cpp25
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