From db20f3f1bb8595633a7e16c8900fd401a453a6b5 Mon Sep 17 00:00:00 2001 From: Jiyoung Yun Date: Tue, 27 Dec 2016 16:46:08 +0900 Subject: Imported Upstream version 1.0.0.9127 --- .../file_io/GetStdHandle/test2/GetStdHandle.cpp | 79 ++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 src/pal/tests/palsuite/file_io/GetStdHandle/test2/GetStdHandle.cpp (limited to 'src/pal/tests/palsuite/file_io/GetStdHandle/test2/GetStdHandle.cpp') diff --git a/src/pal/tests/palsuite/file_io/GetStdHandle/test2/GetStdHandle.cpp b/src/pal/tests/palsuite/file_io/GetStdHandle/test2/GetStdHandle.cpp new file mode 100644 index 0000000000..45f5ddd243 --- /dev/null +++ b/src/pal/tests/palsuite/file_io/GetStdHandle/test2/GetStdHandle.cpp @@ -0,0 +1,79 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +/*===================================================================== +** +** Source: GetStdHandle.c (test 2) +** +** Purpose: Smoke Tests the PAL implementation of the GetStdHandle function. +** +** +**===================================================================*/ + +#include + + +int __cdecl main(int argc, char *argv[]) +{ + HANDLE hFile = NULL; + + if (0 != PAL_Initialize(argc,argv)) + { + return FAIL; + } + + /* + * attempt to get an invalid handle + */ + hFile = GetStdHandle(-2); + if (hFile != INVALID_HANDLE_VALUE) + { + Fail("GetStdHandle: ERROR -> A request for the STD_INPUT_HANDLE " + "returned an invalid handle.\n"); + } + + + /* + * test the STD_INPUT_HANDLE handle + */ + hFile = GetStdHandle(STD_INPUT_HANDLE); + if (hFile == INVALID_HANDLE_VALUE) + { + Fail("GetStdHandle: ERROR -> A request for the STD_INPUT_HANDLE " + "returned an invalid handle.\n"); + } + + + /* + * test the STD_OUTPUT_HANDLE handle + */ + hFile = GetStdHandle(STD_OUTPUT_HANDLE); + if (hFile == INVALID_HANDLE_VALUE) + { + Fail("GetStdHandle: ERROR -> A request for the STD_OUTPUT_HANDLE " + "returned an invalid handle.\n"); + } + + /* test the STD_ERROR_HANDLE handle */ + hFile = GetStdHandle(STD_ERROR_HANDLE); + if (hFile == INVALID_HANDLE_VALUE) + { + Fail("GetStdHandle: ERROR -> A request for the STD_ERROR_HANDLE " + "returned an invalid handle.\n"); + } + + + /* check to see if we can CloseHandle works on the STD_ERROR_HANDLE */ + if (!CloseHandle(hFile)) + { + Fail("GetStdHandle: ERROR -> CloseHandle failed. GetLastError " + "returned %u.\n", + GetLastError()); + } + + + PAL_Terminate(); + return PASS; +} + -- cgit v1.2.3