AU/unittest: use uniquely named test directories in OmahaRequestParamsTest
This should prevent name clashes when unit tests are run in parallel.
BUG=chromium:236465
TEST=Uniquely named test directories used
Change-Id: I364580eaea34dda03ff74d95fc1717c1afa89822
Reviewed-on: https://gerrit.chromium.org/gerrit/60646
Commit-Queue: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
diff --git a/omaha_request_params_unittest.cc b/omaha_request_params_unittest.cc
index 986aacb..1523270 100644
--- a/omaha_request_params_unittest.cc
+++ b/omaha_request_params_unittest.cc
@@ -30,29 +30,34 @@
const string& omaha_url);
virtual void SetUp() {
- ASSERT_EQ(0, System(string("mkdir -p ") + kTestDir + "/etc"));
- ASSERT_EQ(0, System(string("mkdir -p ") + kTestDir +
+ // Create a uniquely named test directory.
+ ASSERT_TRUE(utils::MakeTempDirectory(kTestDirTemplate,
+ &test_dir_));
+
+ ASSERT_EQ(0, System(string("mkdir -p ") + test_dir_ + "/etc"));
+ ASSERT_EQ(0, System(string("mkdir -p ") + test_dir_ +
kStatefulPartition + "/etc"));
// Create a fresh copy of the params for each test, so there's no
// unintended reuse of state across tests.
MockSystemState mock_system_state;
OmahaRequestParams new_params(&mock_system_state);
params_ = new_params;
- params_.set_root(string("./") + kTestDir);
+ params_.set_root(string("./") + test_dir_);
params_.SetLockDown(false);
}
virtual void TearDown() {
- EXPECT_EQ(0, System(string("rm -rf ") + kTestDir));
+ EXPECT_EQ(0, System(string("rm -rf ") + test_dir_));
}
OmahaRequestParams params_;
- static const string kTestDir;
+ static const char* kTestDirTemplate;
+ string test_dir_;
};
-const string OmahaRequestParamsTest::kTestDir =
- "omaha_request_params-test";
+const char* OmahaRequestParamsTest::kTestDirTemplate =
+ "omaha_request_params-test-XXXXXX";
bool OmahaRequestParamsTest::DoTest(OmahaRequestParams* out,
const string& app_version,
@@ -78,7 +83,7 @@
TEST_F(OmahaRequestParamsTest, SimpleTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
@@ -101,7 +106,7 @@
TEST_F(OmahaRequestParamsTest, AppIDTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
@@ -125,7 +130,7 @@
TEST_F(OmahaRequestParamsTest, MissingChannelTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
"CHROMEOS_RELEASE_TRXCK=dev-channel"));
@@ -142,7 +147,7 @@
TEST_F(OmahaRequestParamsTest, ConfusingReleaseTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_FOO=CHROMEOS_RELEASE_VERSION=1.2.3.4\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
"CHROMEOS_RELEASE_TRXCK=dev-channel"));
@@ -159,7 +164,7 @@
TEST_F(OmahaRequestParamsTest, MissingVersionTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_TRACK=dev-channel"));
@@ -178,7 +183,7 @@
TEST_F(OmahaRequestParamsTest, ForceVersionTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_TRACK=dev-channel"));
@@ -197,7 +202,7 @@
TEST_F(OmahaRequestParamsTest, ForcedURLTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
@@ -218,7 +223,7 @@
TEST_F(OmahaRequestParamsTest, MissingURLTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
@@ -239,11 +244,11 @@
TEST_F(OmahaRequestParamsTest, NoDeltasTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_FOO=CHROMEOS_RELEASE_VERSION=1.2.3.4\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
"CHROMEOS_RELEASE_TRXCK=dev-channel"));
- ASSERT_TRUE(WriteFileString(kTestDir + "/.nodelta", ""));
+ ASSERT_TRUE(WriteFileString(test_dir_ + "/.nodelta", ""));
MockSystemState mock_system_state;
OmahaRequestParams out(&mock_system_state);
EXPECT_TRUE(DoTest(&out, "", ""));
@@ -252,14 +257,14 @@
TEST_F(OmahaRequestParamsTest, OverrideTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
"CHROMEOS_RELEASE_TRACK=dev-channel\n"
"CHROMEOS_AUSERVER=http://www.google.com"));
ASSERT_TRUE(WriteFileString(
- kTestDir + kStatefulPartition + "/etc/lsb-release",
+ test_dir_ + kStatefulPartition + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=x86-generic\n"
"CHROMEOS_RELEASE_TRACK=beta-channel\n"
"CHROMEOS_AUSERVER=https://www.google.com"));
@@ -280,14 +285,14 @@
TEST_F(OmahaRequestParamsTest, OverrideLockDownTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
"CHROMEOS_RELEASE_TRACK=dev-channel\n"
"CHROMEOS_AUSERVER=https://www.google.com"));
ASSERT_TRUE(WriteFileString(
- kTestDir + kStatefulPartition + "/etc/lsb-release",
+ test_dir_ + kStatefulPartition + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=x86-generic\n"
"CHROMEOS_RELEASE_TRACK=stable-channel\n"
"CHROMEOS_AUSERVER=http://www.google.com"));
@@ -306,14 +311,14 @@
TEST_F(OmahaRequestParamsTest, OverrideSameChannelTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
"CHROMEOS_RELEASE_TRACK=dev-channel\n"
"CHROMEOS_AUSERVER=http://www.google.com"));
ASSERT_TRUE(WriteFileString(
- kTestDir + kStatefulPartition + "/etc/lsb-release",
+ test_dir_ + kStatefulPartition + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=x86-generic\n"
"CHROMEOS_RELEASE_TRACK=dev-channel"));
MockSystemState mock_system_state;
@@ -330,7 +335,7 @@
TEST_F(OmahaRequestParamsTest, SetTargetChannelTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
@@ -339,7 +344,7 @@
{
MockSystemState mock_system_state;
OmahaRequestParams params(&mock_system_state);
- params.set_root(string("./") + kTestDir);
+ params.set_root(string("./") + test_dir_);
params.SetLockDown(false);
EXPECT_TRUE(params.Init("", "", false));
params.SetTargetChannel("canary-channel", false);
@@ -354,7 +359,7 @@
TEST_F(OmahaRequestParamsTest, SetIsPowerwashAllowedTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
@@ -363,7 +368,7 @@
{
MockSystemState mock_system_state;
OmahaRequestParams params(&mock_system_state);
- params.set_root(string("./") + kTestDir);
+ params.set_root(string("./") + test_dir_);
params.SetLockDown(false);
EXPECT_TRUE(params.Init("", "", false));
params.SetTargetChannel("canary-channel", true);
@@ -378,7 +383,7 @@
TEST_F(OmahaRequestParamsTest, SetTargetChannelInvalidTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
@@ -387,7 +392,7 @@
{
MockSystemState mock_system_state;
OmahaRequestParams params(&mock_system_state);
- params.set_root(string("./") + kTestDir);
+ params.set_root(string("./") + test_dir_);
params.SetLockDown(true);
EXPECT_TRUE(params.Init("", "", false));
params.SetTargetChannel("dogfood-channel", true);
@@ -415,7 +420,7 @@
TEST_F(OmahaRequestParamsTest, ValidChannelTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
@@ -439,7 +444,7 @@
TEST_F(OmahaRequestParamsTest, SetTargetChannelWorks) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
@@ -475,7 +480,7 @@
// Set a different channel in stateful LSB release.
ASSERT_TRUE(WriteFileString(
- kTestDir + kStatefulPartition + "/etc/lsb-release",
+ test_dir_ + kStatefulPartition + "/etc/lsb-release",
"CHROMEOS_RELEASE_TRACK=stable-channel\n"
"CHROMEOS_IS_POWERWASH_ALLOWED=true\n"));
@@ -512,14 +517,14 @@
TEST_F(OmahaRequestParamsTest, ToMoreStableChannelFlagTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=arm-generic\n"
"CHROMEOS_RELEASE_FOO=bar\n"
"CHROMEOS_RELEASE_VERSION=0.2.2.3\n"
"CHROMEOS_RELEASE_TRACK=canary-channel\n"
"CHROMEOS_AUSERVER=http://www.google.com"));
ASSERT_TRUE(WriteFileString(
- kTestDir + kStatefulPartition + "/etc/lsb-release",
+ test_dir_ + kStatefulPartition + "/etc/lsb-release",
"CHROMEOS_RELEASE_BOARD=x86-generic\n"
"CHROMEOS_RELEASE_TRACK=stable-channel\n"
"CHROMEOS_AUSERVER=https://www.google.com"));
@@ -538,7 +543,7 @@
TEST_F(OmahaRequestParamsTest, BoardAppIdUsedForNonCanaryChannelTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_APPID=r\n"
"CHROMEOS_BOARD_APPID=b\n"
"CHROMEOS_CANARY_APPID=c\n"
@@ -552,7 +557,7 @@
TEST_F(OmahaRequestParamsTest, CanaryAppIdUsedForCanaryChannelTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_APPID=r\n"
"CHROMEOS_BOARD_APPID=b\n"
"CHROMEOS_CANARY_APPID=c\n"
@@ -566,7 +571,7 @@
TEST_F(OmahaRequestParamsTest, ReleaseAppIdUsedAsDefaultTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_APPID=r\n"
"CHROMEOS_CANARY_APPID=c\n"
"CHROMEOS_RELEASE_TRACK=stable-channel\n"));
@@ -579,7 +584,7 @@
TEST_F(OmahaRequestParamsTest, CollectECFWVersionsTest) {
ASSERT_TRUE(WriteFileString(
- kTestDir + "/etc/lsb-release",
+ test_dir_ + "/etc/lsb-release",
"CHROMEOS_RELEASE_APPID=r\n"
"CHROMEOS_CANARY_APPID=c\n"
"CHROMEOS_RELEASE_TRACK=stable-channel\n"));