summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Fix S3Simulator daemon name, and hence memleaks filename.Chris Wilson2015-07-31
|
* Add HTTP request logging to S3Simulator.Chris Wilson2015-07-31
|
* Add a method on S3Client to check HTTPResponse for errors.Chris Wilson2015-07-31
| | | | Throws a suitable exception if the response status code is not 200 OK.
* Fix S3Client handling of "Connection: close" responses.Chris Wilson2015-07-31
| | | | | We can't continue to use the same connection after receiving such a response, so close it immediately.
* Add utility methods to HTTPRequest and HTTPResponse classes.Chris Wilson2015-07-31
| | | | | Allow getting method name of an HTTPRequest, and connection open/closed status of an HTTPResponse.
* Refactor to allow sharing code for starting and stopping daemons in tests.Chris Wilson2015-07-31
| | | | | The new StartDaemon() and StopDaemon() in ServerControl.cpp/h are generic, and used by StartClient() and StartServer() in StoreTestUtils.cpp/h.
* Move InvalidConfiguration exception to CommonException.Chris Wilson2015-07-31
| | | | Allows it to be used by S3Store, or in fact anything that uses Configuration.
* Refactor BackupStoreInfo to allow creating them without RaidFiles.Chris Wilson2015-07-31
| | | | | They can now be created using a constructor, and written to any IOStream. Needed for writing them to an S3Store.
* Add AccountNumber to list of config keys checked at runtime.Chris Wilson2015-07-31
| | | | S3Stores don't have account numbers.
* Move load_config_file to Test.cpp to allow reuse.Chris Wilson2015-07-25
|
* Remove duplicate declaration of test functions.Chris Wilson2015-07-25
|
* Refactor BackupStoreInfo to allow loading from any IOStream.Chris Wilson2015-07-19
|
* Fix test_backup_pauses_when_store_is_full by waiting for housekeeping.Chris Wilson2015-07-18
| | | | | | It's not safe to assume that we can get into the store before housekeeping runs, so don't try. Just wait for housekeeping to run and check that all the files are deleted afterwards.
* Major test refactor to support test suites.Chris Wilson2015-07-01
| | | | | | | Refactor all common code from testbbackupd and testbackupstore to allow other test suites to contain multiple tests and execute selected tests more easily. Report all test results within a suite in a standard, easy to read summary.
* Compile fix for test/bbackupd after ClientException moveChris Wilson2015-06-28
|
* Add configuration keys for S3 store type.Chris Wilson2015-06-28
|
* Refactor store account control to allow other store types.Chris Wilson2015-06-28
| | | | | Move common code into a base class, leaving bbstored-specific code. Add skeleton of an S3 store type.
* Refactor to allow non-bbstored store configurations.Chris Wilson2015-06-28
| | | | | | Make some keys not required in BackupDaemonConfigVerify, and verify them afterwards instead, when the rest of the configuration file has been read (and in future, the store type would be known.)
* Ensure that errored tests are reported as failures, not successesChris Wilson2015-06-10
|
* Switch inode database to storing values using Archive.Chris Wilson2015-06-10
| | | | | This allows us to store the local path to the tracked file in the database, and will allow us to extend the storage format again in future if needed.
* Allow MemoryBlockGuard to guard a block passed in (already malloced).Chris Wilson2015-06-10
|
* Add support for optional items in Archives.Chris Wilson2015-06-10
| | | | | If the item is not present (the end of the Archive is reached instead) then a default value is returned instead of throwing an exception.
* Add missing timeouts to Archive Read() calls.Chris Wilson2015-06-10
|
* Fix logging of NamedLock acquisition for O_EXLOCK method.Chris Wilson2015-06-10
|
* Add usage example for -L option, showing how module names were compiled inChris Wilson2015-06-10
|
* Initialise ModificationTime when uploading complete file.Chris Wilson2015-06-10
|
* Add command-line help to test executables.Chris Wilson2015-06-10
|
* Fix another test failure on Windows caused by holding files open.Chris Wilson2015-05-16
|
* Include full platform name in parcels, to distinguish 64-bit builds.Chris Wilson2015-05-16
|
* Fix test script to match change to autoconf variable names.Chris Wilson2015-05-16
|
* Fix error reporting from Reg* functions.Chris Wilson2015-05-16
| | | | | | Unlike the rest of the Win32 API, these functions return their error code, and it's not accessible using GetLastError(). Thanks to Enrique Perez-Terron for reporting this issue.
* Use variable substitution to avoid hard-coding paths to DLLs on Windows.Chris Wilson2015-05-16
| | | | | Add DLLs used by mingw64 gcc, used by recent Cygwin installations, and update to current name of zlib1.dll.
* Allow matching parcel platforms on cpu-vendor and os-cpu-vendor.Chris Wilson2015-05-16
| | | | | | Allows us to match 32/64-bit specific targets in parcels.txt. Add support for variable substitution in parcels.txt.
* Fix test failures on Windows caused by keeping files open too long.Chris Wilson2015-05-16
| | | | | | Once again, the Windows issue of being unable to delete or overwrite an open file causes issues. In this case it's only test failures. We need to be diligent about closing open file handles and protocol sessions in tests.
* Improve exception message when unlink() on a raidfile stripe failsChris Wilson2015-05-16
|
* Use FileModificationTime instead of raw stat() on Windows.Chris Wilson2015-05-16
| | | | | | | | | | | Fixes test failures caused by using seconds since epoch on Windows, instead of a box_time_t, and rounding it to the nearest 10^6, which is fine for a box_time_t (all other platforms), but 10^6 seconds is a rather long time to ignore changes for on Windows. This also makes it possible to support subsecond precision on Windows via FileModificationTime() in future, and have RaidFile detect such subsecond changes.
* Fix NamedLock release on Windows.Chris Wilson2015-05-16
| | | | | | On Windows we can't delete the file while it's open, and we don't need to, because we opened it for exclusive use, so another process can't lock it between us unlocking and deleting it.
* Fix missing account lock while checking for errors.Chris Wilson2015-05-06
| | | | | | | | | | | The old assertion, that the write lock file exists before starting checking, was erroneously passing before when no lock was held, because the lockfile was never deleted. Now that we delete it when unlocking the account, this started causing test failures. Changed the way that accounts are checked for errors to use a function that acquires a write lock first, and modified test to disconnect open clients before starting checking the account, to fix it.
* Fix lock race condition by unlinking before closing the file handle.Chris Wilson2015-05-04
|
* Add extra logging for acquiring and releasing NamedLocks.Chris Wilson2015-05-04
|
* Add command-line option to limit log messages to certain file(s).Chris Wilson2015-05-04
| | | | | E.g. you can run with -L NamedLock.cpp to only show messages logged in that file. You can also repeat it to only show messages from certain files.
* Fix minor test problem caused by not deleting a file between tests.Chris Wilson2015-05-04
|
* Fix tests failing because they can't delete the lock file.Chris Wilson2015-05-04
| | | | Deleting the account deletes the lockfile, so unlocking fails.
* Fix system exit codes from tests, so we can use them in the shell.Chris Wilson2015-05-04
| | | | | I needed reliable exit codes to run the tests in a loop to catch an intermittent failure.
* Define BOX_SOCKET_ERROR_MESSAGE, replace more BOX_LOG_SOCKET_ERROR calls ↵Chris Wilson2015-04-15
| | | | with it.
* Update compilation instructions for Windows.Chris Wilson2015-04-15
|
* Use THROW_EXCEPTION_MESSAGE macro to save a message in exceptions.Chris Wilson2015-04-15
|
* Add ability to run commands in context with TEST_CHECK_THROWS_AND_OR.Chris Wilson2015-04-15
| | | | | Allows the exception message to be captured before it goes out of scope.
* Add a static GetMessage() to get exception message for a known subtype code.Chris Wilson2015-04-15
|
* Fix file locking on Windows.Chris Wilson2015-04-13
| | | | | NamedLock simply didn't work before. This may cause test failures, but the tests are already failing on Windows, and must be fixed.