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

Unified Diff: chrome/common/extensions/docs/server2/permissions_data_source_test.py

Issue 23867003: Docserver: Consolidate features caching and access. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: let's try this again, shall we? Created 7 years, 2 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/common/extensions/docs/server2/permissions_data_source_test.py
diff --git a/chrome/common/extensions/docs/server2/permissions_data_source_test.py b/chrome/common/extensions/docs/server2/permissions_data_source_test.py
index f9b316f70d458f791c1b94084ba44966b268030b..a9fd4b7cbd637f567f4bd4c9f44d11c74df29214 100755
--- a/chrome/common/extensions/docs/server2/permissions_data_source_test.py
+++ b/chrome/common/extensions/docs/server2/permissions_data_source_test.py
@@ -7,68 +7,80 @@ import json
import unittest
from compiled_file_system import CompiledFileSystem
+from features_bundle import FeaturesBundle
from object_store_creator import ObjectStoreCreator
from permissions_data_source import PermissionsDataSource
from test_file_system import TestFileSystem
-class FakeTemplateDataSource(object):
+class _FakeTemplateDataSource(object):
class Factory():
def Create(self, *args):
- return FakeTemplateDataSource()
+ return _FakeTemplateDataSource()
def get(self, key):
return 'partial ' + key
-file_system = TestFileSystem({
- 'permissions.json': json.dumps({
- 'host-permissions': {
- 'name': 'match pattern',
- 'anchor': 'custom-anchor',
- 'platforms': ['app', 'extension'],
- 'partial': 'host_permissions.html',
- 'literal_name': True
- },
- 'activeTab': {
- 'partial': 'active_tab.html'
- },
- 'alarms': {
- 'partial': 'alarms.html'
- },
- 'audioCapture': {
- 'partial': 'audio_capture.html'
- },
- 'background': {
- 'partial': 'background.html'
- }
- }),
- '_permission_features.json': json.dumps({
- 'activeTab': {
- 'extension_types': ['extension', 'packaged_app'],
- },
- 'alarms': {
- 'extension_types': ['extension', 'packaged_app', 'platform_app'],
- },
- 'audioCapture': {
- 'extension_types': ['platform_app']
- },
- 'background': {
- 'extension_types': ['extension', 'packaged_app', 'hosted_app']
- },
- 'commandLinePrivate': {
- 'extension_types': 'all'
- },
- 'cookies': {
- 'extension_types': ['platform_app']
- }
- }),
- '_api_features.json': json.dumps({
- 'cookies': {
- 'dependencies': ['permission:cookies']
- },
- 'alarms': {
- 'dependencies': ['permission:alarms']
- }
- })
-})
+
+_TEST_PERMISSION_FEATURES = {
+ 'host-permissions': {
+ 'name': 'match pattern',
+ 'anchor': 'custom-anchor',
+ 'platforms': ['apps', 'extensions'],
+ 'partial': 'host_permissions.html',
+ 'literal_name': True
+ },
+ 'activeTab': {
+ 'name': 'activeTab',
+ 'platforms': ['extensions'],
+ 'partial': 'active_tab.html'
+ },
+ 'alarms': {
+ 'name': 'alarms',
+ 'platforms': ['apps', 'extensions'],
+ 'partial': 'alarms.html'
+ },
+ 'audioCapture': {
+ 'name': 'audioCapture',
+ 'platforms': ['apps'],
+ 'partial': 'audio_capture.html'
+ },
+ 'background': {
+ 'name': 'background',
+ 'platforms': ['extensions'],
+ 'partial': 'background.html'
+ },
+ 'commandLinePrivate': {
+ 'name': 'commandLinePrivate',
+ 'platforms': ['apps', 'extensions']
+ },
+ 'cookies': {
+ 'name': 'cookies',
+ 'platforms': ['apps']
+ }
+}
+
+_TEST_API_FEATURES = {
+ 'cookies': {
+ 'dependencies': ['permission:cookies']
+ },
+ 'alarms': {
+ 'dependencies': ['permission:alarms']
+ }
+}
+
+
+class _FakeFeaturesBundle(object):
+ def GetAPIFeatures(self):
+ return _TEST_API_FEATURES
+
+ def GetPermissionFeatures(self):
+ return _TEST_PERMISSION_FEATURES
+
+
+class _FakeServerInstance(object):
+ def __init__(self):
+ self.features_bundle = _FakeFeaturesBundle()
+ self.object_store_creator = ObjectStoreCreator.ForTest()
+
class PermissionsDataSourceTest(unittest.TestCase):
def testCreatePermissionsDataSource(self):
@@ -76,19 +88,19 @@ class PermissionsDataSourceTest(unittest.TestCase):
{
'name': 'activeTab',
'anchor': 'activeTab',
- 'platforms': ['extension'],
+ 'platforms': ['extensions'],
'description': 'partial active_tab.html'
},
{
'name': 'alarms',
'anchor': 'alarms',
- 'platforms': ['app', 'extension'],
+ 'platforms': ['apps', 'extensions'],
'description': 'partial alarms.html'
},
{
'name': 'background',
'anchor': 'background',
- 'platforms': ['extension'],
+ 'platforms': ['extensions'],
'description': 'partial background.html'
},
{
@@ -96,7 +108,7 @@ class PermissionsDataSourceTest(unittest.TestCase):
'anchor': 'custom-anchor',
'literal_name': True,
'description': 'partial host_permissions.html',
- 'platforms': ['app', 'extension']
+ 'platforms': ['apps', 'extensions']
}
]
@@ -104,39 +116,33 @@ class PermissionsDataSourceTest(unittest.TestCase):
{
'name': 'alarms',
'anchor': 'alarms',
- 'platforms': ['app', 'extension'],
+ 'platforms': ['apps', 'extensions'],
'description': 'partial alarms.html'
},
{
'name': 'audioCapture',
'anchor': 'audioCapture',
'description': 'partial audio_capture.html',
- 'platforms': ['app']
+ 'platforms': ['apps']
},
{
'anchor': 'cookies',
'name': 'cookies',
'description': 'partial permissions/generic_description',
- 'platforms': ['app']
+ 'platforms': ['apps']
},
{
'name': 'match pattern',
'anchor': 'custom-anchor',
'literal_name': True,
'description': 'partial host_permissions.html',
- 'platforms': ['app', 'extension']
+ 'platforms': ['apps', 'extensions']
}
]
- permissions_data_source = PermissionsDataSource(
- CompiledFileSystem.Factory(file_system, ObjectStoreCreator.ForTest()),
- file_system,
- '_api_features.json',
- '_permission_features.json',
- 'permissions.json')
-
+ permissions_data_source = PermissionsDataSource(_FakeServerInstance())
permissions_data_source.SetTemplateDataSource(
- FakeTemplateDataSource.Factory())
+ _FakeTemplateDataSource.Factory())
self.assertEqual(
expected_extensions,

Powered by Google App Engine
This is Rietveld 408576698