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

Side by Side Diff: chrome/common/extensions/permissions/api_permission_set_unittest.cc

Issue 23506021: Require confirmation for writable directory access. (Closed) Base URL: http://git.chromium.org/chromium/src.git@directory-permission-hack
Patch Set: Created 7 years, 3 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/pickle.h" 5 #include "base/pickle.h"
6 #include "base/values.h" 6 #include "base/values.h"
7 #include "chrome/common/extensions/extension_messages.h" 7 #include "chrome/common/extensions/extension_messages.h"
8 #include "chrome/common/extensions/permissions/api_permission_set.h" 8 #include "chrome/common/extensions/permissions/api_permission_set.h"
9 #include "chrome/common/extensions/permissions/permissions_info.h" 9 #include "chrome/common/extensions/permissions/permissions_info.h"
10 #include "ipc/ipc_message.h" 10 #include "ipc/ipc_message.h"
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after
294 294
295 EXPECT_NE(apis, expected_apis); 295 EXPECT_NE(apis, expected_apis);
296 296
297 IPC::Message m; 297 IPC::Message m;
298 WriteParam(&m, apis); 298 WriteParam(&m, apis);
299 PickleIterator iter(m); 299 PickleIterator iter(m);
300 CHECK(ReadParam(&m, &iter, &expected_apis)); 300 CHECK(ReadParam(&m, &iter, &expected_apis));
301 EXPECT_EQ(apis, expected_apis); 301 EXPECT_EQ(apis, expected_apis);
302 } 302 }
303 303
304 TEST(APIPermissionSetTest, ImplicitPermissions) {
305 APIPermissionSet apis;
306 apis.insert(APIPermission::kFileSystemWrite);
307 apis.AddImpliedPermissions();
308
309 EXPECT_EQ(apis.find(APIPermission::kFileSystemWrite)->id(),
310 APIPermission::kFileSystemWrite);
311 EXPECT_EQ(apis.size(), 1u);
312
313 apis.erase(APIPermission::kFileSystemWrite);
314 apis.insert(APIPermission::kFileSystemDirectory);
315 apis.AddImpliedPermissions();
316
317 EXPECT_EQ(apis.find(APIPermission::kFileSystemDirectory)->id(),
318 APIPermission::kFileSystemDirectory);
319 EXPECT_EQ(apis.size(), 1u);
320
321 apis.insert(APIPermission::kFileSystemWrite);
322 apis.AddImpliedPermissions();
323
324 EXPECT_EQ(apis.find(APIPermission::kFileSystemWrite)->id(),
325 APIPermission::kFileSystemWrite);
326 EXPECT_EQ(apis.find(APIPermission::kFileSystemDirectory)->id(),
327 APIPermission::kFileSystemDirectory);
328 EXPECT_EQ(apis.find(APIPermission::kFileSystemWriteDirectory)->id(),
329 APIPermission::kFileSystemWriteDirectory);
330 EXPECT_EQ(apis.size(), 3u);
331 }
332
304 } // namespace extensions 333 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698