| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 // These tests make sure MediaGalleriesPermission values are parsed correctly. | 5 // These tests make sure MediaGalleriesPermission values are parsed correctly. |
| 6 | 6 |
| 7 #include "base/values.h" | 7 #include "base/values.h" |
| 8 #include "chrome/common/extensions/extension_unittest.h" | 8 #include "chrome/common/extensions/permissions/api_permission.h" |
| 9 #include "chrome/common/extensions/permissions/media_galleries_permission.h" | 9 #include "chrome/common/extensions/permissions/media_galleries_permission.h" |
| 10 #include "chrome/common/extensions/permissions/media_galleries_permission_data.h
" | 10 #include "chrome/common/extensions/permissions/media_galleries_permission_data.h
" |
| 11 #include "chrome/common/extensions/permissions/permissions_info.h" |
| 11 #include "testing/gtest/include/gtest/gtest.h" | 12 #include "testing/gtest/include/gtest/gtest.h" |
| 12 | 13 |
| 13 using content::SocketPermissionRequest; | 14 using content::SocketPermissionRequest; |
| 14 using extensions::SocketPermissionData; | 15 using extensions::SocketPermissionData; |
| 15 | 16 |
| 16 namespace extensions { | 17 namespace extensions { |
| 17 | 18 |
| 18 namespace { | 19 namespace { |
| 19 | 20 |
| 20 class MediaGalleriesPermissionTest : public ExtensionTest { | 21 TEST(MediaGalleriesPermissionTest, GoodValues) { |
| 21 }; | |
| 22 | |
| 23 TEST_F(MediaGalleriesPermissionTest, GoodValues) { | |
| 24 const APIPermissionInfo* permission_info = | 22 const APIPermissionInfo* permission_info = |
| 25 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); | 23 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); |
| 26 | 24 |
| 27 scoped_ptr<APIPermission> permission( | 25 scoped_ptr<APIPermission> permission( |
| 28 permission_info->CreateAPIPermission()); | 26 permission_info->CreateAPIPermission()); |
| 29 | 27 |
| 30 // access_type + all_detected | 28 // access_type + all_detected |
| 31 scoped_ptr<base::ListValue> value(new base::ListValue()); | 29 scoped_ptr<base::ListValue> value(new base::ListValue()); |
| 32 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 30 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
| 33 value->AppendString(MediaGalleriesPermission::kReadPermission); | 31 value->AppendString(MediaGalleriesPermission::kReadPermission); |
| 34 EXPECT_TRUE(permission->FromValue(value.get())); | 32 EXPECT_TRUE(permission->FromValue(value.get())); |
| 35 | 33 |
| 36 // all_detected | 34 // all_detected |
| 37 value.reset(new base::ListValue()); | 35 value.reset(new base::ListValue()); |
| 38 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 36 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
| 39 EXPECT_TRUE(permission->FromValue(value.get())); | 37 EXPECT_TRUE(permission->FromValue(value.get())); |
| 40 | 38 |
| 41 // access_type | 39 // access_type |
| 42 value.reset(new base::ListValue()); | 40 value.reset(new base::ListValue()); |
| 43 value->AppendString(MediaGalleriesPermission::kReadPermission); | 41 value->AppendString(MediaGalleriesPermission::kReadPermission); |
| 44 EXPECT_TRUE(permission->FromValue(value.get())); | 42 EXPECT_TRUE(permission->FromValue(value.get())); |
| 45 | 43 |
| 46 // Repeats are ok. | 44 // Repeats are ok. |
| 47 value.reset(new base::ListValue()); | 45 value.reset(new base::ListValue()); |
| 48 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 46 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
| 49 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 47 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
| 50 EXPECT_TRUE(permission->FromValue(value.get())); | 48 EXPECT_TRUE(permission->FromValue(value.get())); |
| 51 } | 49 } |
| 52 | 50 |
| 53 TEST_F(MediaGalleriesPermissionTest, BadValues) { | 51 TEST(MediaGalleriesPermissionTest, BadValues) { |
| 54 const APIPermissionInfo* permission_info = | 52 const APIPermissionInfo* permission_info = |
| 55 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); | 53 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); |
| 56 | 54 |
| 57 scoped_ptr<APIPermission> permission( | 55 scoped_ptr<APIPermission> permission( |
| 58 permission_info->CreateAPIPermission()); | 56 permission_info->CreateAPIPermission()); |
| 59 | 57 |
| 60 // Empty | 58 // Empty |
| 61 scoped_ptr<base::ListValue> value(new base::ListValue()); | 59 scoped_ptr<base::ListValue> value(new base::ListValue()); |
| 62 EXPECT_FALSE(permission->FromValue(value.get())); | 60 EXPECT_FALSE(permission->FromValue(value.get())); |
| 63 } | 61 } |
| 64 | 62 |
| 65 TEST_F(MediaGalleriesPermissionTest, Equal) { | 63 TEST(MediaGalleriesPermissionTest, Equal) { |
| 66 const APIPermissionInfo* permission_info = | 64 const APIPermissionInfo* permission_info = |
| 67 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); | 65 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); |
| 68 | 66 |
| 69 scoped_ptr<APIPermission> permission1( | 67 scoped_ptr<APIPermission> permission1( |
| 70 permission_info->CreateAPIPermission()); | 68 permission_info->CreateAPIPermission()); |
| 71 scoped_ptr<APIPermission> permission2( | 69 scoped_ptr<APIPermission> permission2( |
| 72 permission_info->CreateAPIPermission()); | 70 permission_info->CreateAPIPermission()); |
| 73 | 71 |
| 74 scoped_ptr<base::ListValue> value(new base::ListValue()); | 72 scoped_ptr<base::ListValue> value(new base::ListValue()); |
| 75 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 73 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
| 76 value->AppendString(MediaGalleriesPermission::kReadPermission); | 74 value->AppendString(MediaGalleriesPermission::kReadPermission); |
| 77 ASSERT_TRUE(permission1->FromValue(value.get())); | 75 ASSERT_TRUE(permission1->FromValue(value.get())); |
| 78 | 76 |
| 79 value.reset(new base::ListValue()); | 77 value.reset(new base::ListValue()); |
| 80 value->AppendString(MediaGalleriesPermission::kReadPermission); | 78 value->AppendString(MediaGalleriesPermission::kReadPermission); |
| 81 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 79 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
| 82 ASSERT_TRUE(permission2->FromValue(value.get())); | 80 ASSERT_TRUE(permission2->FromValue(value.get())); |
| 83 EXPECT_TRUE(permission1->Equal(permission2.get())); | 81 EXPECT_TRUE(permission1->Equal(permission2.get())); |
| 84 | 82 |
| 85 value.reset(new base::ListValue()); | 83 value.reset(new base::ListValue()); |
| 86 value->AppendString(MediaGalleriesPermission::kReadPermission); | 84 value->AppendString(MediaGalleriesPermission::kReadPermission); |
| 87 value->AppendString(MediaGalleriesPermission::kReadPermission); | 85 value->AppendString(MediaGalleriesPermission::kReadPermission); |
| 88 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 86 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
| 89 ASSERT_TRUE(permission2->FromValue(value.get())); | 87 ASSERT_TRUE(permission2->FromValue(value.get())); |
| 90 EXPECT_TRUE(permission1->Equal(permission2.get())); | 88 EXPECT_TRUE(permission1->Equal(permission2.get())); |
| 91 } | 89 } |
| 92 | 90 |
| 93 TEST_F(MediaGalleriesPermissionTest, ToFromValue) { | 91 TEST(MediaGalleriesPermissionTest, ToFromValue) { |
| 94 const APIPermissionInfo* permission_info = | 92 const APIPermissionInfo* permission_info = |
| 95 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); | 93 PermissionsInfo::GetInstance()->GetByID(APIPermission::kMediaGalleries); |
| 96 | 94 |
| 97 scoped_ptr<APIPermission> permission1( | 95 scoped_ptr<APIPermission> permission1( |
| 98 permission_info->CreateAPIPermission()); | 96 permission_info->CreateAPIPermission()); |
| 99 scoped_ptr<APIPermission> permission2( | 97 scoped_ptr<APIPermission> permission2( |
| 100 permission_info->CreateAPIPermission()); | 98 permission_info->CreateAPIPermission()); |
| 101 | 99 |
| 102 scoped_ptr<base::ListValue> value(new base::ListValue()); | 100 scoped_ptr<base::ListValue> value(new base::ListValue()); |
| 103 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); | 101 value->AppendString(MediaGalleriesPermission::kAllAutoDetectedPermission); |
| 104 value->AppendString(MediaGalleriesPermission::kReadPermission); | 102 value->AppendString(MediaGalleriesPermission::kReadPermission); |
| 105 ASSERT_TRUE(permission1->FromValue(value.get())); | 103 ASSERT_TRUE(permission1->FromValue(value.get())); |
| 106 | 104 |
| 107 scoped_ptr<base::Value> vtmp(permission1->ToValue()); | 105 scoped_ptr<base::Value> vtmp(permission1->ToValue()); |
| 108 ASSERT_TRUE(vtmp); | 106 ASSERT_TRUE(vtmp); |
| 109 ASSERT_TRUE(permission2->FromValue(vtmp.get())); | 107 ASSERT_TRUE(permission2->FromValue(vtmp.get())); |
| 110 EXPECT_TRUE(permission1->Equal(permission2.get())); | 108 EXPECT_TRUE(permission1->Equal(permission2.get())); |
| 111 } | 109 } |
| 112 | 110 |
| 113 } // namespace | 111 } // namespace |
| 114 | 112 |
| 115 } // namespace extensions | 113 } // namespace extensions |
| OLD | NEW |