Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Unified Diff: chrome/browser/extensions/api/file_system/file_system_api_unittest.cc

Issue 1032313002: Add a notification about auto-granted access to file systems. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/api/file_system/file_system_api_unittest.cc
diff --git a/chrome/browser/extensions/api/file_system/file_system_api_unittest.cc b/chrome/browser/extensions/api/file_system/file_system_api_unittest.cc
index 6253d1bbc1a78edfe9222522d606bd3b5ddc9859..c3541249a521307ba7f050d6fe02ef5f916a09af 100644
--- a/chrome/browser/extensions/api/file_system/file_system_api_unittest.cc
+++ b/chrome/browser/extensions/api/file_system/file_system_api_unittest.cc
@@ -82,15 +82,20 @@ AcceptOption* BuildAcceptOption(const std::string& description,
// Registers a request for a user consent by incrementing the counter.
// Additionally simulates completing the user consent request with the
// |response| result.
-void OnUserConsentRequested(int* counter,
- const ConsentProvider::Consent response,
- const VolumeInfo& volume_info,
- bool writable,
- const ConsentProvider::ConsentCallback& callback) {
+void OnAskUser(int* counter,
+ const ConsentProvider::Consent response,
+ const VolumeInfo& volume_info,
+ bool writable,
+ const ConsentProvider::ConsentCallback& callback) {
(*counter)++;
callback.Run(response);
}
+// Registers user notifications about auto-granting permissions.
+void OnNotifyUser(int* counter, const VolumeInfo& volume_info, bool writable) {
+ (*counter)++;
+}
+
// Rewrites result of a consent request from |result| to |log|.
void OnConsentReceived(ConsentProvider::Consent* log,
const ConsentProvider::Consent result) {
@@ -271,10 +276,11 @@ TEST_F(FileSystemApiConsentProviderTest, ForNonKioskApps) {
scoped_refptr<Extension> component_extension(
test_util::BuildApp(ExtensionBuilder().SetLocation(Manifest::COMPONENT))
.Build());
- int user_consent_counter = 0;
- ConsentProvider provider(base::Bind(&OnUserConsentRequested,
- &user_consent_counter,
- ConsentProvider::CONSENT_GRANTED));
+ int ask_user_counter = 0;
+ int notify_user_counter = 0;
+ ConsentProvider provider(base::Bind(&OnAskUser, &ask_user_counter,
+ ConsentProvider::CONSENT_GRANTED),
+ base::Bind(&OnNotifyUser, &notify_user_counter));
provider.SetIsAutoLaunchedForTesting(base::Bind(&OnIsAutoLaunched, false));
EXPECT_FALSE(provider.IsGrantable(*component_extension));
@@ -284,7 +290,8 @@ TEST_F(FileSystemApiConsentProviderTest, ForNonKioskApps) {
base::Bind(&OnConsentReceived, &result));
base::RunLoop().RunUntilIdle();
- EXPECT_EQ(0, user_consent_counter);
+ EXPECT_EQ(0, ask_user_counter);
+ EXPECT_EQ(0, notify_user_counter);
EXPECT_EQ(ConsentProvider::CONSENT_REJECTED, result);
}
@@ -294,10 +301,11 @@ TEST_F(FileSystemApiConsentProviderTest, ForNonKioskApps) {
scoped_refptr<Extension> whitelisted_component_extension(
test_util::BuildApp(ExtensionBuilder().SetLocation(Manifest::COMPONENT))
.Build());
- int user_consent_counter = 0;
- ConsentProvider provider(base::Bind(&OnUserConsentRequested,
- &user_consent_counter,
- ConsentProvider::CONSENT_REJECTED));
+ int ask_user_counter = 0;
+ int notify_user_counter = 0;
+ ConsentProvider provider(base::Bind(&OnAskUser, &ask_user_counter,
+ ConsentProvider::CONSENT_REJECTED),
+ base::Bind(&OnNotifyUser, &notify_user_counter));
std::set<std::string> whitelist;
whitelist.insert(whitelisted_component_extension->id());
provider.SetComponentWhitelistForTesting(whitelist);
@@ -310,7 +318,8 @@ TEST_F(FileSystemApiConsentProviderTest, ForNonKioskApps) {
base::Bind(&OnConsentReceived, &result));
base::RunLoop().RunUntilIdle();
- EXPECT_EQ(0, user_consent_counter);
+ EXPECT_EQ(0, ask_user_counter);
+ EXPECT_EQ(0, notify_user_counter);
EXPECT_EQ(ConsentProvider::CONSENT_GRANTED, result);
}
@@ -319,10 +328,11 @@ TEST_F(FileSystemApiConsentProviderTest, ForNonKioskApps) {
{
scoped_refptr<Extension> non_component_extension(
test_util::CreateEmptyExtension());
- int user_consent_counter = 0;
- ConsentProvider provider(base::Bind(&OnUserConsentRequested,
- &user_consent_counter,
- ConsentProvider::CONSENT_GRANTED));
+ int ask_user_counter = 0;
+ int notify_user_counter = 0;
+ ConsentProvider provider(base::Bind(&OnAskUser, &ask_user_counter,
+ ConsentProvider::CONSENT_GRANTED),
+ base::Bind(&OnNotifyUser, &notify_user_counter));
provider.SetIsAutoLaunchedForTesting(base::Bind(&OnIsAutoLaunched, false));
EXPECT_FALSE(provider.IsGrantable(*non_component_extension));
@@ -332,14 +342,15 @@ TEST_F(FileSystemApiConsentProviderTest, ForNonKioskApps) {
base::Bind(&OnConsentReceived, &result));
base::RunLoop().RunUntilIdle();
- EXPECT_EQ(0, user_consent_counter);
+ EXPECT_EQ(0, ask_user_counter);
+ EXPECT_EQ(0, notify_user_counter);
EXPECT_EQ(ConsentProvider::CONSENT_REJECTED, result);
}
}
TEST_F(FileSystemApiConsentProviderTest, ForKioskApps) {
// Non-component apps in auto-launch kiosk mode will be granted access
- // instantly without asking for user consent.
+ // instantly without asking for user consent, but with a notification.
{
scoped_refptr<Extension> auto_launch_kiosk_app(
test_util::BuildApp(ExtensionBuilder().Pass())
@@ -350,10 +361,11 @@ TEST_F(FileSystemApiConsentProviderTest, ForKioskApps) {
user_manager_->AddKioskAppUser(auto_launch_kiosk_app->id());
user_manager_->LoginUser(auto_launch_kiosk_app->id());
- int user_consent_counter = 0;
- ConsentProvider provider(base::Bind(&OnUserConsentRequested,
- &user_consent_counter,
- ConsentProvider::CONSENT_REJECTED));
+ int ask_user_counter = 0;
+ int notify_user_counter = 0;
+ ConsentProvider provider(base::Bind(&OnAskUser, &ask_user_counter,
+ ConsentProvider::CONSENT_REJECTED),
+ base::Bind(&OnNotifyUser, &notify_user_counter));
provider.SetIsAutoLaunchedForTesting(base::Bind(&OnIsAutoLaunched, true));
EXPECT_TRUE(provider.IsGrantable(*auto_launch_kiosk_app));
@@ -363,7 +375,8 @@ TEST_F(FileSystemApiConsentProviderTest, ForKioskApps) {
base::Bind(&OnConsentReceived, &result));
base::RunLoop().RunUntilIdle();
- EXPECT_EQ(0, user_consent_counter);
+ EXPECT_EQ(0, ask_user_counter);
+ EXPECT_EQ(1, notify_user_counter);
EXPECT_EQ(ConsentProvider::CONSENT_GRANTED, result);
}
@@ -377,10 +390,11 @@ TEST_F(FileSystemApiConsentProviderTest, ForKioskApps) {
.Build());
user_manager_->KioskAppLoggedIn(manual_launch_kiosk_app->id());
{
- int user_consent_counter = 0;
- ConsentProvider provider(base::Bind(&OnUserConsentRequested,
- &user_consent_counter,
- ConsentProvider::CONSENT_GRANTED));
+ int ask_user_counter = 0;
+ int notify_user_counter = 0;
+ ConsentProvider provider(base::Bind(&OnAskUser, &ask_user_counter,
+ ConsentProvider::CONSENT_GRANTED),
+ base::Bind(&OnNotifyUser, &notify_user_counter));
provider.SetIsAutoLaunchedForTesting(base::Bind(&OnIsAutoLaunched, false));
EXPECT_TRUE(provider.IsGrantable(*manual_launch_kiosk_app));
@@ -390,17 +404,19 @@ TEST_F(FileSystemApiConsentProviderTest, ForKioskApps) {
base::Bind(&OnConsentReceived, &result));
base::RunLoop().RunUntilIdle();
- EXPECT_EQ(1, user_consent_counter);
+ EXPECT_EQ(1, ask_user_counter);
+ EXPECT_EQ(0, notify_user_counter);
EXPECT_EQ(ConsentProvider::CONSENT_GRANTED, result);
}
// Non-component apps in manual-launch kiosk mode will be rejected access
// after rejecting by a user.
{
- int user_consent_counter = 0;
- ConsentProvider provider(base::Bind(&OnUserConsentRequested,
- &user_consent_counter,
- ConsentProvider::CONSENT_REJECTED));
+ int ask_user_counter = 0;
+ int notify_user_counter = 0;
+ ConsentProvider provider(base::Bind(&OnAskUser, &ask_user_counter,
+ ConsentProvider::CONSENT_REJECTED),
+ base::Bind(&OnNotifyUser, &notify_user_counter));
provider.SetIsAutoLaunchedForTesting(base::Bind(&OnIsAutoLaunched, false));
EXPECT_TRUE(provider.IsGrantable(*manual_launch_kiosk_app));
@@ -410,7 +426,8 @@ TEST_F(FileSystemApiConsentProviderTest, ForKioskApps) {
base::Bind(&OnConsentReceived, &result));
base::RunLoop().RunUntilIdle();
- EXPECT_EQ(1, user_consent_counter);
+ EXPECT_EQ(1, ask_user_counter);
+ EXPECT_EQ(0, notify_user_counter);
EXPECT_EQ(ConsentProvider::CONSENT_REJECTED, result);
}
}

Powered by Google App Engine
This is Rietveld 408576698