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

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

Issue 61393002: Docserver: Enable GitHub content providers. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 7 years, 1 month 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/content_providers_test.py
diff --git a/chrome/common/extensions/docs/server2/content_providers_test.py b/chrome/common/extensions/docs/server2/content_providers_test.py
index a35c348ab6995ef9dba303e389e1e4ad7b31e433..04df6b0bc2e509d8f3a06840b9545b87f49814bf 100755
--- a/chrome/common/extensions/docs/server2/content_providers_test.py
+++ b/chrome/common/extensions/docs/server2/content_providers_test.py
@@ -8,6 +8,8 @@ import unittest
from compiled_file_system import CompiledFileSystem
from content_providers import ContentProviders
+from empty_dir_file_system import EmptyDirFileSystem
+from github_file_system_provider import GithubFileSystemProvider
Jeffrey Yasskin 2013/11/06 04:00:19 I don't think you use this.
not at google - send to devlin 2013/11/06 23:00:13 Done.
from object_store_creator import ObjectStoreCreator
from test_file_system import TestFileSystem
from test_util import DisableLogging
@@ -29,6 +31,13 @@ _CONTENT_PROVIDERS = {
'dir': ''
},
},
+ 'github-provider': {
+ 'serveFrom': 'gh',
+ 'github': {
+ 'owner': 'GoogleChrome',
+ 'repo': 'hello-world',
+ },
+ },
'tomatoes': {
'serveFrom': 'tomatoes-dir/are/a',
'chromium': {
@@ -65,11 +74,31 @@ _FILE_SYSTEM_DATA = {
}
+class _MockGithubFileSystemProvider(object):
+ '''A GithubFileSystemProvider imitation which records every call to Create
+ and returns them from GetAndReset.
+ '''
+
+ def __init__(self):
+ self._calls = []
+
+ def Create(self, owner, repo):
+ self._calls.append((owner, repo))
+ return EmptyDirFileSystem()
+
+ def GetAndReset(self):
+ calls = self._calls
+ self._calls = []
+ return calls
+
+
class ContentProvidersTest(unittest.TestCase):
def setUp(self):
+ self._github_fs_provider = _MockGithubFileSystemProvider()
self._content_providers = ContentProviders(
CompiledFileSystem.Factory(ObjectStoreCreator.ForTest()),
- TestFileSystem(_FILE_SYSTEM_DATA))
+ TestFileSystem(_FILE_SYSTEM_DATA),
+ self._github_fs_provider)
def testSimpleRootPath(self):
provider = self._content_providers.GetByName('apples')
@@ -127,6 +156,13 @@ class ContentProvidersTest(unittest.TestCase):
def testProviderNotFound(self):
self.assertEqual(None, self._content_providers.GetByName('cabbages'))
+ def testGithubContentProvider(self):
+ provider, path = self._content_providers.GetByServeFrom('gh/some/path')
+ self.assertEqual('github-provider', provider.name)
+ self.assertEqual('some/path', path)
+ self.assertEqual([('GoogleChrome', 'hello-world')],
+ self._github_fs_provider.GetAndReset())
+
if __name__ == '__main__':
unittest.main()

Powered by Google App Engine
This is Rietveld 408576698