diff --git a/tests/utils.h b/tests/utils.h index bc566d2d..ad61d284 100644 --- a/tests/utils.h +++ b/tests/utils.h @@ -1,8 +1,12 @@ -#include -#include +#ifdef _WIN32 +#include +#else #include #include #include +#endif +#include +#include using namespace std; @@ -10,6 +14,10 @@ inline string copyFile(const string &filename, const string &ext) { string newname = string(tempnam(NULL, NULL)) + ext; string oldname = string("data/") + filename + ext; +#ifdef _WIN32 + CopyFile(oldname.c_str(), newname.c_str(), FALSE); + SetFileAttributes(newname.c_str(), GetFileAttributes(newname.c_str()) & ~FILE_ATTRIBUTE_READONLY); +#else char buffer[4096]; int bytes; int inf = open(oldname.c_str(), O_RDONLY); @@ -18,6 +26,7 @@ inline string copyFile(const string &filename, const string &ext) write(outf, buffer, bytes); close(outf); close(inf); +#endif return newname; }