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

Side by Side Diff: chrome/common/extensions/docs/server2/manifest_data_source_test.py

Issue 15842014: Doc Server Manifest Generation Followup Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Header absolute URL fix Created 7 years, 5 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
(Empty)
1 #!/usr/bin/env python
2 # Copyright 2013 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file.
5
6 import json
7 import unittest
8
9 from compiled_file_system import CompiledFileSystem
10 from manifest_data_source import ManifestDataSource
11 from object_store_creator import ObjectStoreCreator
12 from test_file_system import TestFileSystem
13
14 file_system = TestFileSystem({
15 "_manifest_features.json": json.dumps({
16 'req0': {
17 'extension_types': ['platform_app', 'extension']
18 },
19 'req1': {
20 'extension_types': 'all'
21 },
22 'opt0': {
23 'extension_types': ['extension']
24 },
25 'opt1': {
26 'extension_types': ['hosted_app']
27 },
28 'free0': {
29 'extension_types': ['platform_app']
30 },
31 'free1': {
32 'extension_types': ['platform_app', 'hosted_app', 'extension']
33 },
34 'only0': {
35 'extension_types': 'all'
36 },
37 'only1': {
38 'extension_types': ['platform_app']
39 },
40 'rec0': {
41 'extension_types': ['extension']
42 },
43 'rec1': {
44 'extension_types': ['platform_app', 'extension']
45 },
46 'req0.opt2': {
47 'extension_types': ['extension']
48 }
49 }),
50 "manifest.json": json.dumps({
51 'required': [
52 {
53 'name': 'req0',
54 'example': {'value': 'Extension'}
55 },
56 {'name': 'req1'}
57 ],
58 'only_one': [
59 {'name': 'only0'},
60 {'name': 'only1'}
61 ],
62 'recommended': [
63 {'name': 'rec0'},
64 {'name': 'rec1'}
65 ],
66 'optional': [
67 {'name': 'opt0'},
68 {'name': 'opt1'},
69 {'name': 'req0.opt2'}
70 ]
71 })
72 })
73
74 class ManifestDataSourceTest(unittest.TestCase):
75 def testCreateManifestData(self):
76 expected_extensions = {
77 'required': [
78 {
79 'name': 'req0',
80 'example': {'value': 'Extension'},
81 'subdoc': [
82 {'name': 'opt2'}
83 ]
84 },
85 {'name': 'req1'}
86 ],
87 'recommended': [
88 {'name': 'rec0'},
89 {'name': 'rec1'}
90 ],
91 'only_one': [
92 {'name': 'only0'}
93 ],
94 'optional': [
95 {'name': 'free1'},
96 {
97 'name': 'opt0',
98 'is_last': True
99 }
100 ]
101 }
102
103 expected_apps = {
104 'required': [
105 {
106 'name': 'req0',
107 'example': {'value': 'Application'}
108 },
109 {'name': 'req1'}
110 ],
111 'recommended': [
112 {'name': 'rec1'}
113 ],
114 'only_one': [
115 {'name': 'only0'},
116 {'name': 'only1'}
117 ],
118 'optional': [
119 {'name': 'free0'},
120 {
121 'name': 'free1',
122 'is_last': True
123 }
124 ]
125 }
126
127 mds = ManifestDataSource(
128 CompiledFileSystem.Factory(file_system, ObjectStoreCreator.ForTest()),
129 file_system, 'manifest.json', '_manifest_features.json')
130
131 self.assertEqual(expected_extensions, mds.get('extensions'))
132 self.assertEqual(expected_apps, mds.get('apps'))
133
134 if __name__ == '__main__':
135 unittest.main()
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698