Commit 2d0ccc6b authored by Owen Min's avatar Owen Min Committed by Commit Bot

InitDMToken should not create DM token directory.

The DM token directory should be created only when writing token.
Reading the token should not create any directory or file.

Bug: 880870
Tbr: pastarmovj
Change-Id: I6917092a494c6b99508ef6279639ff75906f2175
Reviewed-on: https://chromium-review.googlesource.com/1207218
Commit-Queue: Owen Min <zmin@chromium.org>
Reviewed-by: default avatarGeorges Khalil <georgesak@chromium.org>
Reviewed-by: default avatarRoger Tawa <rogerta@chromium.org>
Cr-Commit-Position: refs/heads/master@{#588962}
parent 43027120
......@@ -123,7 +123,7 @@ std::string BrowserDMTokenStorageLinux::InitEnrollmentToken() {
std::string BrowserDMTokenStorageLinux::InitDMToken() {
base::FilePath token_file_path;
if (!GetDmTokenFilePath(&token_file_path, RetrieveClientId(), true))
if (!GetDmTokenFilePath(&token_file_path, RetrieveClientId(), false))
return std::string();
std::string token;
......
......@@ -42,6 +42,8 @@ class BrowserDMTokenStorageLinux : public BrowserDMTokenStorage {
FRIEND_TEST_ALL_PREFIXES(BrowserDMTokenStorageLinuxTest, InitClientId);
FRIEND_TEST_ALL_PREFIXES(BrowserDMTokenStorageLinuxTest, InitEnrollmentToken);
FRIEND_TEST_ALL_PREFIXES(BrowserDMTokenStorageLinuxTest, InitDMToken);
FRIEND_TEST_ALL_PREFIXES(BrowserDMTokenStorageLinuxTest,
InitDMTokenWithoutDirectory);
FRIEND_TEST_ALL_PREFIXES(BrowserDMTokenStorageLinuxTest, SaveDMToken);
DISALLOW_COPY_AND_ASSIGN(BrowserDMTokenStorageLinux);
......
......@@ -102,6 +102,23 @@ TEST_F(BrowserDMTokenStorageLinuxTest, InitDMToken) {
EXPECT_EQ(kDMToken, storage.InitDMToken());
}
TEST_F(BrowserDMTokenStorageLinuxTest, InitDMTokenWithoutDirectory) {
std::unique_ptr<base::ScopedPathOverride> path_override;
base::ScopedTempDir fake_user_data_dir;
ASSERT_TRUE(fake_user_data_dir.CreateUniqueTempDir());
path_override.reset(new base::ScopedPathOverride(
chrome::DIR_USER_DATA, fake_user_data_dir.GetPath()));
base::FilePath dm_token_dir_path =
fake_user_data_dir.GetPath().Append(kDmTokenBaseDir);
MockBrowserDMTokenStorageLinux storage;
EXPECT_EQ(std::string(), storage.InitDMToken());
EXPECT_FALSE(base::PathExists(dm_token_dir_path));
}
class TestStoreDMTokenDelegate {
public:
TestStoreDMTokenDelegate() : called_(false), success_(false) {}
......
......@@ -39,6 +39,8 @@ class BrowserDMTokenStorageMac : public BrowserDMTokenStorage {
FRIEND_TEST_ALL_PREFIXES(BrowserDMTokenStorageMacTest, InitClientId);
FRIEND_TEST_ALL_PREFIXES(BrowserDMTokenStorageMacTest, InitEnrollmentToken);
FRIEND_TEST_ALL_PREFIXES(BrowserDMTokenStorageMacTest, InitDMToken);
FRIEND_TEST_ALL_PREFIXES(BrowserDMTokenStorageMacTest,
InitDMTokenWithoutDirectory);
FRIEND_TEST_ALL_PREFIXES(BrowserDMTokenStorageMacTest, SaveDMToken);
DISALLOW_COPY_AND_ASSIGN(BrowserDMTokenStorageMac);
......
......@@ -171,7 +171,7 @@ std::string BrowserDMTokenStorageMac::InitEnrollmentToken() {
std::string BrowserDMTokenStorageMac::InitDMToken() {
base::FilePath token_file_path;
if (!GetDmTokenFilePath(&token_file_path, RetrieveClientId(), true))
if (!GetDmTokenFilePath(&token_file_path, RetrieveClientId(), false))
return std::string();
std::string token;
......
......@@ -106,4 +106,22 @@ TEST_F(BrowserDMTokenStorageMacTest, SaveDMToken) {
EXPECT_EQ(kDMToken, dm_token);
}
TEST_F(BrowserDMTokenStorageMacTest, InitDMTokenWithoutDirectory) {
std::unique_ptr<base::ScopedPathOverride> path_override;
base::ScopedTempDir fake_app_data_dir;
ASSERT_TRUE(fake_app_data_dir.CreateUniqueTempDir());
path_override.reset(new base::ScopedPathOverride(
base::DIR_APP_DATA, fake_app_data_dir.GetPath()));
TestStoreDMTokenDelegate delegate;
BrowserDMTokenStorageMac storage;
base::FilePath dm_token_dir_path =
fake_app_data_dir.GetPath().Append(kDmTokenBaseDir);
EXPECT_EQ(std::string(), storage.InitDMToken());
EXPECT_FALSE(base::PathExists(dm_token_dir_path));
}
} // namespace policy
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment