summaryrefslogtreecommitdiff
path: root/unittests/Utility/StatusTest.cpp
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2019-01-19 10:06:29 +0000
committerDimitry Andric <dim@FreeBSD.org>2019-01-19 10:06:29 +0000
commit94994d372d014ce4c8758b9605d63fae651bd8aa (patch)
tree51c0b708bd59f205d6b35cb2a8c24d62f0c33d77 /unittests/Utility/StatusTest.cpp
parent39be7ce23363d12ae3e49aeb1fdb2bfeb892e836 (diff)
Notes
Diffstat (limited to 'unittests/Utility/StatusTest.cpp')
-rw-r--r--unittests/Utility/StatusTest.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/unittests/Utility/StatusTest.cpp b/unittests/Utility/StatusTest.cpp
index b3f5182a5d8f..4e0cfb9f45f7 100644
--- a/unittests/Utility/StatusTest.cpp
+++ b/unittests/Utility/StatusTest.cpp
@@ -10,6 +10,10 @@
#include "lldb/Utility/Status.h"
#include "gtest/gtest.h"
+#ifdef _WIN32
+#include <winerror.h>
+#endif
+
using namespace lldb_private;
using namespace lldb;
@@ -51,3 +55,22 @@ TEST(StatusTest, ErrorConversion) {
EXPECT_TRUE(bool(foo));
EXPECT_EQ("foo", llvm::toString(std::move(foo)));
}
+
+#ifdef _WIN32
+TEST(StatusTest, ErrorWin32) {
+ auto success = Status(NO_ERROR, ErrorType::eErrorTypeWin32);
+ EXPECT_STREQ(NULL, success.AsCString());
+ EXPECT_FALSE(success.ToError());
+ EXPECT_TRUE(success.Success());
+
+ auto s = Status(ERROR_ACCESS_DENIED, ErrorType::eErrorTypeWin32);
+ EXPECT_TRUE(s.Fail());
+ EXPECT_STREQ("Access is denied. ", s.AsCString());
+
+ s.SetError(ERROR_IPSEC_IKE_TIMED_OUT, ErrorType::eErrorTypeWin32);
+ EXPECT_STREQ("Negotiation timed out ", s.AsCString());
+
+ s.SetError(16000, ErrorType::eErrorTypeWin32);
+ EXPECT_STREQ("unknown error", s.AsCString());
+}
+#endif