Add unit test for GetUserName

This commit is contained in:
Andrew Schwartzmeyer 2015-07-20 11:24:31 -07:00
parent 83d2162dc1
commit 95c6658178
2 changed files with 24 additions and 1 deletions

View file

@ -11,7 +11,7 @@ link_directories(${monad_native_BINARY_DIR})
set(LIB_SOURCE_FILES impl/getcurrentprocessorid.cpp impl/getusername.cpp impl/terminal.cpp)
set(HOST_COMMON_SOURCE_FILES host/common/coreclrutil.cpp)
set(HOST_COMMON_TEST_SOURCE_FILES tests/host/test-hostutil.cpp)
set(TEST_SOURCE_FILES tests/test-getcurrentprocessid.cpp ${HOST_COMMON_SOURCE_FILES} ${HOST_COMMON_TEST_SOURCE_FILES})
set(TEST_SOURCE_FILES tests/test-getcurrentprocessid.cpp tests/test-getusername.cpp ${HOST_COMMON_SOURCE_FILES} ${HOST_COMMON_TEST_SOURCE_FILES})
set(SOURCE_FILES main.cpp ../ext-src/gtest/fused-src/gtest/gtest-all.cc)
SET(HOST_CMDLINE_SOURCE_FILES host/cmdline/main.cpp ${HOST_COMMON_SOURCE_FILES})

View file

@ -0,0 +1,23 @@
#include <unistd.h>
#include <gtest/gtest.h>
#include "getusername.h"
TEST(GetUserName,simple)
{
// allocate a WCHAR_T buffer to receive username
DWORD lpnSize = 64;
WCHAR_T lpBuffer[lpnSize];
BOOL result = GetUserName(lpBuffer, &lpnSize);
// GetUserName returns 1 on success
ASSERT_EQ(1, result);
// get expected username
const char *username = getlogin();
// GetUserName sets lpnSize to length of username including null
ASSERT_EQ(strlen(username)+1, lpnSize);
// TODO: ASSERT_STREQ(username, Utf16leToUtf8(lpBuffer))
}