diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2019-01-19 10:06:29 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2019-01-19 10:06:29 +0000 |
commit | 94994d372d014ce4c8758b9605d63fae651bd8aa (patch) | |
tree | 51c0b708bd59f205d6b35cb2a8c24d62f0c33d77 /unittests/Utility/StatusTest.cpp | |
parent | 39be7ce23363d12ae3e49aeb1fdb2bfeb892e836 (diff) |
Notes
Diffstat (limited to 'unittests/Utility/StatusTest.cpp')
-rw-r--r-- | unittests/Utility/StatusTest.cpp | 23 |
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 |