summaryrefslogtreecommitdiff
path: root/src/pal/tests/palsuite/file_io/SetCurrentDirectoryA/test1/SetCurrentDirectoryA.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/pal/tests/palsuite/file_io/SetCurrentDirectoryA/test1/SetCurrentDirectoryA.c')
-rw-r--r--src/pal/tests/palsuite/file_io/SetCurrentDirectoryA/test1/SetCurrentDirectoryA.c215
1 files changed, 0 insertions, 215 deletions
diff --git a/src/pal/tests/palsuite/file_io/SetCurrentDirectoryA/test1/SetCurrentDirectoryA.c b/src/pal/tests/palsuite/file_io/SetCurrentDirectoryA/test1/SetCurrentDirectoryA.c
deleted file mode 100644
index c07a624..0000000
--- a/src/pal/tests/palsuite/file_io/SetCurrentDirectoryA/test1/SetCurrentDirectoryA.c
+++ /dev/null
@@ -1,215 +0,0 @@
-// 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: SetCurrentDirectoryA.c (test 1)
-**
-** Purpose: Tests the PAL implementation of the SetCurrentDirectoryA function.
-**
-**
-**===================================================================*/
-
-#include <palsuite.h>
-
-
-
-/* In order to avoid the "chicken and egg" scenario, this is another
- method of getting the current directory. GetFullPathNameA is called with
- a dummy file name and then the file name is stripped off leaving the
- current working directory
-*/
-
-BOOL GetCurrentDir(char* szCurrentDir)
-{
- const char* szFileName = "blah";
- DWORD dwRc = 0;
- char szReturnedPath[_MAX_DIR+1];
- LPSTR pPathPtr;
- size_t nCount = 0;
-
- /* use GetFullPathNameA to to get the current path by stripping
- the file name off the end */
- memset(szReturnedPath, 0, (_MAX_DIR+1));
- dwRc = GetFullPathNameA(szFileName,
- _MAX_DIR,
- szReturnedPath,
- &pPathPtr);
-
- if (dwRc == 0)
- {
- /* GetFullPathNameA failed */
- Trace("SetCurrentDirectoryA: ERROR -> GetFullPathNameA failed "
- "with error code: %ld.\n", GetLastError());
- return(FALSE);
- }
-
- /* now strip the file name from the full path to get the current path */
- nCount = strlen(szReturnedPath) - strlen(szFileName);
- memset(szCurrentDir, 0, (_MAX_DIR+1));
- strncpy(szCurrentDir, szReturnedPath, nCount);
-
- return(TRUE);
-}
-
-
-
-int __cdecl main(int argc, char *argv[])
-{
- const char* szDirName = "testing";
- /* directory name longer than MAX_PATH characters */
- char szLongDirName[MAX_LONGPATH+1];
- char szNewDir[_MAX_DIR+1];
- char szBuiltDir[_MAX_DIR+1];
- char szHomeDir[_MAX_DIR+1];
- WCHAR* szwPtr = NULL;
-
- memset(szLongDirName, 'a', MAX_LONGPATH+1);
- if (0 != PAL_Initialize(argc,argv))
- {
- return FAIL;
- }
-
- /* remove the directory just in case a previous run of the test didn't */
- szwPtr = convert((LPSTR)szDirName);
-
- /* clean up. Remove the directory
- * if it exists */
- RemoveDirectoryW(szwPtr);
-
- /* create a temp directory off the current directory */
- if (CreateDirectoryA(szDirName, NULL) != TRUE)
- {
- free(szwPtr);
- Fail("SetCurrentDirectoryA: ERROR -> CreateDirectoryW failed "
- "with error code: %ld.\n", GetLastError());
- }
-
- /* find out what the current "home" directory is */
- memset(szHomeDir, 0, (_MAX_DIR+1));
- if(GetCurrentDir(szHomeDir) != TRUE)
- {
- if (!RemoveDirectoryW(szwPtr))
- {
- Trace("SetCurrentDirectoryA: ERROR -> RemoveDirectoryW failed "
- "with error code: %ld.\n", GetLastError());
- }
- free(szwPtr);
- PAL_TerminateEx(FAIL);
- return FAIL;
- }
-
- /* set the current directory to the temp directory */
-
- if (SetCurrentDirectoryA(szDirName) != TRUE)
- {
- Trace("SetCurrentDirectoryA: ERROR -> Unable to set current "
- "directory. Failed with error code: %ld.\n", GetLastError());
- if (!RemoveDirectoryW(szwPtr))
- {
- Trace("SetCurrentDirectoryA: ERROR -> RemoveDirectoryW failed "
- "with error code: %ld.\n", GetLastError());
- }
- free(szwPtr);
- Fail("");
- }
-
- /* append the temp name to the "home" directory */
- memset(szBuiltDir, 0, (_MAX_DIR+1));
-#if WIN32
- sprintf(szBuiltDir,"%s%s\\", szHomeDir, szDirName);
-#else
- sprintf(szBuiltDir,"%s%s/", szHomeDir, szDirName);
-#endif
-
- /* get the new current directory */
- memset(szNewDir, 0, (_MAX_DIR+1));
- if(GetCurrentDir(szNewDir) != TRUE)
- {
- if (!RemoveDirectoryW(szwPtr))
- {
- Trace("SetCurrentDirectoryA: ERROR -> RemoveDirectoryW failed "
- "with error code: %ld.\n", GetLastError());
- }
- free(szwPtr);
- PAL_TerminateEx(FAIL);
- return FAIL;
- }
-
- /*compare the new current dir to the compiled current dir */
- if (strncmp(szNewDir, szBuiltDir, strlen(szNewDir)) != 0)
- {
- if (!RemoveDirectoryW(szwPtr))
- {
- Trace("SetCurrentDirectoryA: ERROR -> RemoveDirectoryW failed "
- "with error code: %ld.\n", GetLastError());
- }
- free(szwPtr);
- Fail("SetCurrentDirectoryA: ERROR -> The set directory \"%s\" does not"
- " compare to the built directory \"%s\".\n",
- szNewDir,
- szBuiltDir);
- }
-
-
-
- /* set the current dir back to the original */
- if (SetCurrentDirectoryA(szHomeDir) != TRUE)
- {
- Trace("SetCurrentDirectoryA: ERROR -> Unable to set current "
- "directory. Failed with error code: %ld.\n", GetLastError());
- if (!RemoveDirectoryW(szwPtr))
- {
- Trace("SetCurrentDirectoryA: ERROR -> RemoveDirectoryW failed "
- "with error code: %ld.\n", GetLastError());
- }
- free(szwPtr);
- Fail("");
- }
-
-
- /* get the new current directory */
- memset(szNewDir, 0, sizeof(char)*(_MAX_DIR+1));
- if(GetCurrentDir(szNewDir) != TRUE)
- {
- if (!RemoveDirectoryW(szwPtr))
- {
- Trace("SetCurrentDirectoryA: ERROR -> RemoveDirectoryW failed "
- "with error code: %ld.\n", GetLastError());
- }
- free(szwPtr);
- PAL_TerminateEx(FAIL);
- return FAIL;
- }
-
- /* ensure it compares to the "home" directory which is where
- we should be now */
- if (strncmp(szNewDir, szHomeDir, strlen(szNewDir)) != 0)
- {
- if (!RemoveDirectoryW(szwPtr))
- {
- Trace("SetCurrentDirectoryA: ERROR -> RemoveDirectoryW failed "
- "with error code: %ld.\n", GetLastError());
- }
- free(szwPtr);
- Fail("SetCurrentDirectoryA: ERROR -> The set directory does not "
- "compare to the built directory.\n");
- }
-
-
- /* clean up */
- if (!RemoveDirectoryW(szwPtr))
- {
- free(szwPtr);
- Fail("SetCurrentDirectoryA: ERROR -> RemoveDirectoryW failed "
- "with error code: %ld.\n", GetLastError());
- }
-
- free(szwPtr);
- PAL_Terminate();
-
- return PASS;
-}
-
-