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

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

Issue 11315018: Extensions Docs Server: Generalize $ref's to work for any schema node (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 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/api_data_source_test.py
diff --git a/chrome/common/extensions/docs/server2/api_data_source_test.py b/chrome/common/extensions/docs/server2/api_data_source_test.py
index 471b07ed37fe9c6fdaaf31d6f1923f23887e8e60..4604620e799379912af8850c05c4985133508780 100755
--- a/chrome/common/extensions/docs/server2/api_data_source_test.py
+++ b/chrome/common/extensions/docs/server2/api_data_source_test.py
@@ -9,7 +9,7 @@ import sys
import unittest
from api_data_source import (APIDataSource,
- _JscModel,
+ _JSCModel,
_FormatValue,
_RemoveNoDocs)
from compiled_file_system import CompiledFileSystem
@@ -28,10 +28,23 @@ def _GetType(dict_, name):
if type_['name'] == name:
return type_
-class FakeSamplesDataSource:
+class FakeSamplesDataSource(object):
def Create(self, request):
return {}
+class FakeAPIAndListDataSource(object):
+ def __init__(self, json_data):
+ self._json = json_data
+
+ def __getitem__(self, key):
+ if key not in self._json:
+ raise FileNotFoundError(key)
+ return self._json[key]
+
+ def GetAllNames(self):
+ return self._json.keys()
+
+
class APIDataSourceTest(unittest.TestCase):
def setUp(self):
self._base_path = os.path.join(sys.path[0], 'test_data', 'test_json')
@@ -64,15 +77,14 @@ class APIDataSourceTest(unittest.TestCase):
self.assertRaises(FileNotFoundError, data_source.get, 'junk')
def _LoadJSON(self, filename):
- return json.loads(comment_eater.Nom(self._ReadLocalFile(filename)))[0]
-
- def _ToDictTest(self, filename):
- expected_json = json.loads(self._ReadLocalFile('expected_' + filename))
- gen = _JscModel(self._LoadJSON(filename))
- self.assertEquals(expected_json, gen.ToDict())
+ return json.loads(comment_eater.Nom(self._ReadLocalFile(filename)))
def testCreateId(self):
- dict_ = _JscModel(self._LoadJSON('test_file.json')).ToDict()
+ data_source = FakeAPIAndListDataSource(
+ self._LoadJSON('test_file_data_source.json'))
+ dict_ = _JSCModel(self._LoadJSON('test_file.json')[0],
+ data_source,
+ data_source).ToDict(True)
self.assertEquals('type-TypeA', dict_['types'][0]['id'])
self.assertEquals('property-TypeA-b',
dict_['types'][0]['properties'][0]['id'])
@@ -80,18 +92,12 @@ class APIDataSourceTest(unittest.TestCase):
self.assertEquals('event-EventA', dict_['events'][0]['id'])
def testToDict(self):
- self._ToDictTest('test_file.json')
-
- def testGetLinkToRefType(self):
- link = GetLinkToRefType('truthTeller', 'liar.Tab')
- self.assertEquals('liar.html#type-Tab', link['href'])
- self.assertEquals('liar.Tab', link['text'])
- link = GetLinkToRefType('truthTeller', 'Tab')
- self.assertEquals('#type-Tab', link['href'])
- self.assertEquals('Tab', link['text'])
- link = GetLinkToRefType('nay', 'lies.chrome.bookmarks.Tab')
- self.assertEquals('lies.chrome.bookmarks.html#type-Tab', link['href'])
- self.assertEquals('lies.chrome.bookmarks.Tab', link['text'])
+ filename = 'test_file.json'
+ expected_json = self._LoadJSON('expected_' + filename)
+ data_source = FakeAPIAndListDataSource(
+ self._LoadJSON('test_file_data_source.json'))
+ gen = _JSCModel(self._LoadJSON(filename)[0], data_source, data_source)
+ self.assertEquals(expected_json, gen.ToDict(True))
def testFormatValue(self):
self.assertEquals('1,234,567', _FormatValue(1234567))
@@ -99,7 +105,11 @@ class APIDataSourceTest(unittest.TestCase):
self.assertEquals('234,567', _FormatValue(234567))
def testFormatDescription(self):
- dict_ = _JscModel(self._LoadJSON('ref_test.json')).ToDict()
+ data_source = FakeAPIAndListDataSource(
+ self._LoadJSON('ref_test_data_source.json'))
+ dict_ = _JSCModel(self._LoadJSON('ref_test.json')[0],
+ data_source,
+ data_source).ToDict(True)
self.assertEquals(_MakeLink('#type-type2', 'type2'),
_GetType(dict_, 'type1')['description'])
self.assertEquals(
@@ -112,9 +122,9 @@ class APIDataSourceTest(unittest.TestCase):
_GetType(dict_, 'type3')['description'])
def testRemoveNoDocs(self):
- d = json.loads(self._ReadLocalFile('nodoc_test.json'))
+ d = self._LoadJSON('nodoc_test.json')
_RemoveNoDocs(d)
- self.assertEqual(json.loads(self._ReadLocalFile('expected_nodoc.json')), d)
+ self.assertEqual(self._LoadJSON('expected_nodoc.json'), d)
if __name__ == '__main__':
unittest.main()

Powered by Google App Engine
This is Rietveld 408576698