[Box Backup-commit] COMMIT r2135 - box/trunk/test/backupdiff
boxbackup-dev at fluffy.co.uk
boxbackup-dev at fluffy.co.uk
Sat Apr 5 01:55:32 BST 2008
Author: chris
Date: 2008-04-05 00:55:32 +0000 (Sat, 05 Apr 2008)
New Revision: 2135
Modified:
box/trunk/test/backupdiff/testbackupdiff.cpp
Log:
Improve debugging when failing to create the large file for diff speed
tests. (merges [1946])
Modified: box/trunk/test/backupdiff/testbackupdiff.cpp
===================================================================
--- box/trunk/test/backupdiff/testbackupdiff.cpp 2008-04-05 00:53:52 UTC (rev 2134)
+++ box/trunk/test/backupdiff/testbackupdiff.cpp 2008-04-05 00:55:32 UTC (rev 2135)
@@ -64,7 +64,7 @@
return true;
}
-void make_file_of_zeros(const char *filename, size_t size)
+bool make_file_of_zeros(const char *filename, size_t size)
{
#ifdef WIN32
HANDLE handle = openfile(filename, O_WRONLY | O_CREAT | O_EXCL, 0);
@@ -75,7 +75,9 @@
BOOL result = SetEndOfFile(handle);
if (result != TRUE)
{
- printf("Error %u\n", GetLastError());
+ BOX_ERROR("Failed to create large file " << filename <<
+ " (" << (size >> 20) << " MB): " <<
+ GetErrorMessage(GetLastError()));
}
TEST_THAT(result == TRUE);
TEST_THAT(CloseHandle(handle) == TRUE);
@@ -87,7 +89,16 @@
TEST_THAT(close(fd) == 0);
#endif
- TEST_THAT((size_t)TestGetFileSize(filename) == size);
+ bool correct_size = ((size_t)TestGetFileSize(filename) == size);
+ TEST_THAT(correct_size);
+ if (!correct_size)
+ {
+ BOX_ERROR("Failed to create large file " << filename <<
+ " (" << (size >> 20) << " MB): " <<
+ "got " << (TestGetFileSize(filename) >> 20) <<
+ " MB instead");
+ }
+ return correct_size;
}
@@ -515,14 +526,21 @@
// found. Check this out!
#ifdef WIN32
- ::fprintf(stdout, "Testing diffing two large streams, "
- "may take a while!\n");
- ::fflush(stdout);
+ BOX_WARNING("Testing diffing two large streams, may take a while!");
+ ::fflush(stderr);
#endif
- make_file_of_zeros("testfiles/zero.0", 20*1024*1024);
- make_file_of_zeros("testfiles/zero.1", 200*1024*1024);
+ if (!make_file_of_zeros("testfiles/zero.0", 20*1024*1024))
+ {
+ return 1;
+ }
+ if (!make_file_of_zeros("testfiles/zero.1", 200*1024*1024))
+ {
+ remove("testfiles/zero.0");
+ return 1;
+ }
+
// Generate a first encoded file
{
BackupStoreFilenameClear f0name("zero.0");
More information about the Boxbackup-commit
mailing list