Add test for PBD::copy_file
From this I can see that PBD::copy_file is not working correctly on windows as it is adding windows style line endings. Adding O_BINARY to ::open flags would fix it, but perhaps there is a better way...
This commit is contained in:
parent
94d8dfa256
commit
7338c4e242
@ -1,8 +1,14 @@
|
||||
#include "filesystem_test.h"
|
||||
|
||||
#include <unistd.h>
|
||||
#include <stdlib.h>
|
||||
#include "filesystem_test.h"
|
||||
|
||||
#include <glibmm/miscutils.h>
|
||||
|
||||
#include "pbd/file_utils.h"
|
||||
|
||||
#include "test_common.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
CPPUNIT_TEST_SUITE_REGISTRATION (FilesystemTest);
|
||||
@ -35,3 +41,17 @@ FilesystemTest::testPathIsWithin ()
|
||||
#endif
|
||||
}
|
||||
|
||||
void
|
||||
FilesystemTest::testCopyFile ()
|
||||
{
|
||||
std::string testdata_path;
|
||||
CPPUNIT_ASSERT (find_file (test_search_path (), "RosegardenPatchFile.xml", testdata_path));
|
||||
|
||||
std::string output_path = test_output_directory ("CopyFile");
|
||||
|
||||
output_path = Glib::build_filename (output_path, "RosegardenPatchFile.xml");
|
||||
|
||||
cerr << "CopyFile test output path: " << output_path << endl;
|
||||
|
||||
CPPUNIT_ASSERT (PBD::copy_file (testdata_path, output_path));
|
||||
}
|
||||
|
@ -5,10 +5,12 @@ class FilesystemTest : public CppUnit::TestFixture
|
||||
{
|
||||
CPPUNIT_TEST_SUITE (FilesystemTest);
|
||||
CPPUNIT_TEST (testPathIsWithin);
|
||||
CPPUNIT_TEST (testCopyFile);
|
||||
CPPUNIT_TEST_SUITE_END ();
|
||||
|
||||
public:
|
||||
void testPathIsWithin ();
|
||||
void testCopyFile ();
|
||||
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user