summaryrefslogtreecommitdiffstats
path: root/rlz/test
diff options
context:
space:
mode:
Diffstat (limited to 'rlz/test')
-rw-r--r--rlz/test/rlz_unittest_main.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/rlz/test/rlz_unittest_main.cc b/rlz/test/rlz_unittest_main.cc
index 8ebbaf8..f2e99cb 100644
--- a/rlz/test/rlz_unittest_main.cc
+++ b/rlz/test/rlz_unittest_main.cc
@@ -10,6 +10,12 @@
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
+#if defined(OS_POSIX)
+#include "base/file_path.h"
+#include "base/files/scoped_temp_dir.h"
+#include "rlz/lib/rlz_value_store.h"
+#endif
+
int main(int argc, char **argv) {
base::AtExitManager at_exit;
CommandLine::Init(argc, argv);
@@ -21,6 +27,13 @@ int main(int argc, char **argv) {
if (ret == 0) {
// Now re-run all the tests using a supplementary brand code. This brand
// code will remain in effect for the lifetime of the branding object.
+#if defined(OS_POSIX)
+ // Set a temporary directory for RLZ here, because SupplementaryBranding
+ // creates and owns RlzValueStore object for its lifetime.
+ base::ScopedTempDir temp_dir;
+ if (temp_dir.CreateUniqueTempDir())
+ rlz_lib::testing::SetRlzStoreDirectory(temp_dir.path());
+#endif
rlz_lib::SupplementaryBranding branding("TEST");
ret = RUN_ALL_TESTS();
}