Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / chrome / test / data / policy / policy_test_cases.json
1 {
2   "-- Template --": {
3     "intro": "Top-level entries map a policy name to its test parameters, described below. The name of the top level entry should be of the form <policy name>[.suffix]. The optional suffix is used for defining multiple test cases for a single policy.",
4
5     "os": ["List of operating systems that support this policy. Valid values:", "win", "linux", "mac", "chromeos", "Defaults to empty if not specified."],
6     "official_only": "Whether this policy exists in official builds only. Defaults to |false| if not specified.",
7     "can_be_recommended": "Whether a recommended value may be set for the policy. Defaults to |false| if not specified.",
8     "test_policy": "A policy dictionary that should make the preferences affected by this policy become policy-controlled. Usually just sets the current policy. Defaults to an empty dictionary if not specified.",
9     "note": "If the policy affects any preferences, the following array should be specified with one entry per such preference.",
10     "pref_mappings": [
11       { "pref": "The affected preference's name.",
12         "local_state": "Whether |pref| is registered in local state's PrefService instead of the profile's PrefService. Defaults to |false| if not specified.",
13         "check_for_mandatory": "Should the preference be tested when a mandatory value is set for the policy? Defaults to |true| if not specified.",
14         "check_for_recommended": "Should the preference be tested when a recommended value is set for the policy? Defaults to |true| if not specified.",
15         "note": "When |can_be_recommended| is |false|, the policy is never set to a recommended value so |check_for_recommended| has no effect.",
16         "note": "The following entries should be specified if controlled setting indicators exist for |pref| in the settings UI.",
17         "indicator_test_setup_js": "Any JavaScript that should be executed before testing the indicators. This should be specified only if an explicit user action must be simulated (e.g. clicking a button).",
18         "indicator_selector": "A CSS selector that locates all controlled setting indicators for |pref|. This is appended to the selector 'span.controlled-setting-indicator' and if not specified, defaults to '[pref=(the value of |pref|)', e.g. '[pref=homepage]'.",
19         "note": "Any number of test cases may be specified in the following array.",
20         "indicator_tests": [
21           { "policy": "A policy dictionary that should affect |pref| when set as mandatory or recommended policy.",
22             "value": "The value that |pref| should take on. This must only be specified if |pref| has multiple controlled setting indicators, each corresponding to a specific value (e.g. indicators next to radio buttons).",
23             "readonly": "Whether setting the policy dictionary as recommended should cause |pref| to become read-only in the settings UI. This will be the case when the dictionary sets another policy that makes |pref| not applicable (e.g. setting 'homepage is NTP' makes the 'homepage URL' pref not applicable and read-only)."
24           }
25         ]
26       }
27     ],
28     "note": "The following entry should be specified if there is a controlled setting indicator that reacts to the policy directly, without a preference serving as an intermediary.",
29     "indicator_selector": "A CSS selector that locates the controlled setting indicator directly affected by the policy. This is appended to the selector 'span.controlled-setting-indicator'."
30   },
31
32   "HomepageLocation": {
33     "os": ["win", "linux", "mac", "chromeos"],
34     "can_be_recommended": true,
35     "test_policy": { "HomepageLocation": "http://chromium.org" },
36     "pref_mappings": [
37       { "pref": "homepage",
38         "indicator_tests": [
39           { "policy": { "HomepageIsNewTabPage": false, "HomepageLocation": "http://chromium.org" } },
40           { "policy": { "HomepageIsNewTabPage": true, "HomepageLocation": "http://chromium.org" },
41             "readonly": true
42           }
43         ]
44       }
45     ]
46   },
47
48   "HomepageIsNewTabPage": {
49     "os": ["win", "linux", "mac", "chromeos"],
50     "can_be_recommended": true,
51     "test_policy": { "HomepageIsNewTabPage": true },
52     "pref_mappings": [
53       { "pref": "homepage_is_newtabpage",
54         "indicator_tests": [
55           { "policy": { "HomepageIsNewTabPage": false },
56             "value": "false"},
57           { "policy": { "HomepageIsNewTabPage": true },
58             "value": "true"}
59         ]
60       }
61     ]
62   },
63
64   "DefaultBrowserSettingEnabled": {
65     "os": ["win", "mac", "linux"],
66     "test_policy": { "DefaultBrowserSettingEnabled": true },
67     "pref_mappings": [
68       { "pref": "browser.default_browser_setting_enabled",
69         "local_state": true
70       }
71     ]
72   },
73
74   "ApplicationLocaleValue": {
75     "os": ["win"],
76     "can_be_recommended": true,
77     "test_policy": { "ApplicationLocaleValue": "fr" },
78     "pref_mappings": [
79       { "pref": "intl.app_locale",
80         "local_state": true
81       }
82     ]
83   },
84
85   "AlternateErrorPagesEnabled": {
86     "os": ["win", "linux", "mac", "chromeos"],
87     "can_be_recommended": true,
88     "test_policy": { "AlternateErrorPagesEnabled": false },
89     "pref_mappings": [
90       { "pref": "alternate_error_pages.enabled",
91         "indicator_tests": [
92           { "policy": { "AlternateErrorPagesEnabled": false } }
93         ]
94       }
95     ]
96   },
97
98   "SearchSuggestEnabled": {
99     "os": ["win", "linux", "mac", "chromeos"],
100     "can_be_recommended": true,
101     "test_policy": { "SearchSuggestEnabled": false },
102     "pref_mappings": [
103       { "pref": "search.suggest_enabled",
104         "indicator_tests": [
105           { "policy": { "SearchSuggestEnabled": false } }
106         ]
107       }
108     ]
109   },
110
111   "DnsPrefetchingEnabled": {
112     "os": ["win", "linux", "mac", "chromeos"],
113     "can_be_recommended": true,
114     "test_policy": { "DnsPrefetchingEnabled": false },
115     "pref_mappings": [
116       { "pref": "dns_prefetching.enabled" },
117       { "pref": "net.network_prediction_options",
118         "indicator_tests": [
119           { "policy": { "DnsPrefetchingEnabled": false } }
120         ]
121       }
122     ]
123   },
124
125   "NetworkPredictionOptions": {
126     "os": ["win", "linux", "mac", "chromeos"],
127     "can_be_recommended": true,
128     "test_policy": { "NetworkPredictionOptions": 2 },
129     "pref_mappings": [
130       { "pref": "dns_prefetching.enabled" },
131       { "pref": "net.network_prediction_options",
132         "indicator_tests": [
133           { "policy": { "NetworkPredictionOptions": 2 } }
134         ]
135       }
136     ]
137   },
138
139   "DisableSpdy": {
140     "os": ["win", "linux", "mac", "chromeos"],
141     "test_policy": { "DisableSpdy": true },
142     "pref_mappings": [
143       { "pref": "spdy.disabled" }
144     ]
145   },
146
147   "DisabledSchemes": {
148     "os": ["win", "linux", "mac", "chromeos"],
149     "test_policy": { "DisabledSchemes": ["file"] },
150     "pref_mappings": [
151       { "pref": "policy.url_blacklist" }
152     ]
153   },
154
155   "JavascriptEnabled": {
156     "os": ["win", "linux", "mac", "chromeos"],
157     "test_policy": { "JavascriptEnabled": false },
158     "pref_mappings": [
159       { "pref": "profile.managed_default_content_settings.javascript",
160         "indicator_selector": "[content-setting=javascript]",
161         "indicator_tests": [
162           { "policy": { "JavascriptEnabled": false },
163             "value": "block"}
164         ]
165       }
166     ]
167   },
168
169   "IncognitoEnabled": {
170     "os": ["win", "linux", "mac", "chromeos"],
171     "test_policy": { "IncognitoEnabled": false },
172     "pref_mappings": [
173       { "pref": "incognito.mode_availability" }
174     ]
175   },
176
177   "IncognitoModeAvailability": {
178     "os": ["win", "linux", "mac", "chromeos"],
179     "test_policy": { "IncognitoModeAvailability": 1 },
180     "pref_mappings": [
181       { "pref": "incognito.mode_availability" }
182     ]
183   },
184
185   "SavingBrowserHistoryDisabled": {
186     "os": ["win", "linux", "mac", "chromeos"],
187     "test_policy": { "SavingBrowserHistoryDisabled": true },
188     "pref_mappings": [
189       { "pref": "history.saving_disabled" }
190     ]
191   },
192
193   "AllowDeletingBrowserHistory": {
194     "os": [],
195     "test_policy": { "AllowDeletingBrowserHistory": false },
196     "pref_mappings": [
197       { "pref": "history.deleting_enabled" }
198     ]
199   },
200
201   "RemoteAccessClientFirewallTraversal": {
202   },
203
204   "RemoteAccessHostFirewallTraversal": {
205     "os": [],
206     "test_policy": { "RemoteAccessHostFirewallTraversal": true },
207     "pref_mappings": [
208       { "pref": "remote_access.host_firewall_traversal" }
209     ],
210
211     "note": "TODO(frankf): Enable on all OS after crbug.com/121066 is fixed."
212   },
213
214   "RemoteAccessHostRequireTwoFactor": {
215     "os": [],
216     "test_policy": { "RemoteAccessHostRequireTwoFactor": false },
217     "pref_mappings": [
218       { "pref": "remote_access.host_require_two_factor" }
219     ]
220   },
221
222   "RemoteAccessHostDomain": {
223     "os": [],
224     "test_policy": { "RemoteAccessHostDomain": "" },
225     "pref_mappings": [
226       { "pref": "remote_access.host_domain" }
227     ]
228   },
229
230   "RemoteAccessHostTalkGadgetPrefix": {
231     "os": [],
232     "test_policy": { "RemoteAccessHostTalkGadgetPrefix": "chromoting-host" },
233     "pref_mappings": [
234       { "pref": "remote_access.host_talkgadget_prefix" }
235     ]
236   },
237
238   "RemoteAccessHostRequireCurtain": {
239     "os": [],
240     "test_policy": { "RemoteAccessHostRequireCurtain": false },
241     "pref_mappings": [
242       { "pref": "remote_access.host_require_curtain" }
243     ]
244   },
245
246   "RemoteAccessHostAllowClientPairing": {
247     "os": [],
248     "test_policy": { "RemoteAccessHostAllowClientPairing": true },
249     "pref_mappings": [
250       { "pref": "remote_access.host_allow_client_pairing" }
251     ]
252   },
253
254   "RemoteAccessHostAllowGnubbyAuth": {
255     "os": [],
256     "test_policy": { "RemoteAccessHostAllowGnubbyAuth": true },
257     "pref_mappings": [
258       { "pref": "remote_access.host_allow_gnubby_auth" }
259     ]
260   },
261
262   "RemoteAccessHostAllowRelayedConnection": {
263     "os": [],
264     "test_policy": { "RemoteAccessHostAllowRelayedConnection": true },
265     "pref_mappings": [
266       { "pref": "remote_access.host_allow_relayed_connection" }
267     ]
268   },
269
270   "RemoteAccessHostUdpPortRange": {
271     "os": [],
272     "test_policy": { "RemoteAccessHostUdpPortRange": "12400-12409" },
273     "pref_mappings": [
274       { "pref": "remote_access.host_udp_port_range" }
275     ]
276   },
277
278   "PrintingEnabled": {
279     "os": ["win", "linux", "mac", "chromeos"],
280     "test_policy": { "PrintingEnabled": false },
281     "pref_mappings": [
282       { "pref": "printing.enabled" }
283     ]
284   },
285
286   "CloudPrintProxyEnabled": {
287     "os": [],
288     "test_policy": { "CloudPrintProxyEnabled": true },
289     "pref_mappings": [
290       { "pref": "cloud_print.enabled" }
291     ]
292   },
293
294   "CloudPrintSubmitEnabled": {
295     "os": ["win", "mac", "linux"],
296     "test_policy": { "CloudPrintSubmitEnabled": false },
297     "pref_mappings": [
298       { "pref": "cloud_print.submit_enabled" }
299     ]
300   },
301
302   "SafeBrowsingEnabled": {
303     "os": ["win", "linux", "mac", "chromeos"],
304     "can_be_recommended": true,
305     "test_policy": { "SafeBrowsingEnabled": false },
306     "pref_mappings": [
307       { "pref": "safebrowsing.enabled",
308         "indicator_tests": [
309           { "policy": { "SafeBrowsingEnabled": false } }
310         ]
311       }
312     ]
313   },
314
315   "ForceSafeSearch": {
316     "pref": "settings.force_safesearch",
317     "test_policy": { "ForceSafeSearch": true },
318     "settings_pages": [],
319     "os": ["win", "linux", "mac", "chromeos"]
320   },
321
322   "MetricsReportingEnabled": {
323     "os": ["win", "mac", "linux"],
324     "official_only": true,
325     "can_be_recommended": true,
326     "test_policy": { "MetricsReportingEnabled": false },
327     "indicator_selector": "#metrics-reporting-disabled-icon",
328     "pref_mappings": [
329       { "pref": "user_experience_metrics.reporting_enabled",
330         "local_state": true
331       }
332     ]
333   },
334
335   "PasswordManagerEnabled": {
336     "os": ["win", "linux", "mac", "chromeos"],
337     "can_be_recommended": true,
338     "test_policy": { "PasswordManagerEnabled": false },
339     "pref_mappings": [
340       { "pref": "profile.password_manager_enabled",
341         "indicator_tests": [
342           { "policy": { "PasswordManagerEnabled": false } }
343         ]
344       }
345     ]
346   },
347
348   "PasswordManagerAllowShowPasswords": {
349     "os": ["win", "linux", "mac", "chromeos"],
350     "test_policy": { "PasswordManagerAllowShowPasswords": false },
351     "pref_mappings": [
352       { "pref": "profile.password_manager_allow_show_passwords" }
353     ]
354   },
355
356   "ContextualSearchEnabled": {
357     "os": ["android"]
358   },
359
360   "AutoFillEnabled": {
361     "os": ["win", "linux", "mac", "chromeos"],
362     "can_be_recommended": true,
363     "test_policy": { "AutoFillEnabled": false },
364     "pref_mappings": [
365       { "pref": "autofill.enabled",
366         "indicator_tests": [
367           { "policy": { "AutoFillEnabled": false } }
368         ]
369       }
370     ]
371   },
372
373   "DisabledPlugins": {
374     "os": ["win", "linux", "mac", "chromeos"],
375     "test_policy": { "DisabledPlugins": ["Flash"] },
376     "pref_mappings": [
377       { "pref": "plugins.plugins_disabled" }
378     ]
379   },
380
381   "EnabledPlugins": {
382     "os": ["win", "linux", "mac", "chromeos"],
383     "test_policy": { "EnabledPlugins": ["Flash"] },
384     "pref_mappings": [
385       { "pref": "plugins.plugins_enabled" }
386     ]
387   },
388
389   "DisabledPluginsExceptions": {
390     "os": ["win", "linux", "mac", "chromeos"],
391     "test_policy": { "DisabledPluginsExceptions": ["Flash"] },
392     "pref_mappings": [
393       { "pref": "plugins.plugins_disabled_exceptions" }
394     ]
395   },
396
397   "DisablePluginFinder": {
398     "os": ["win", "linux", "mac", "chromeos"],
399     "test_policy": { "DisablePluginFinder": true },
400     "pref_mappings": [
401       { "pref": "plugins.disable_plugin_finder",
402         "local_state": true
403       }
404     ]
405   },
406
407   "SyncDisabled": {
408     "os": ["win", "linux", "mac", "chromeos"],
409     "test_policy": { "SyncDisabled": true },
410     "pref_mappings": [
411       { "pref": "sync.managed" }
412     ]
413   },
414
415   "SigninAllowed": {
416     "os": ["win", "linux", "mac"],
417     "test_policy": { "SigninAllowed": true },
418     "pref_mappings": [
419       { "pref": "signin.allowed" }
420     ]
421   },
422
423   "EnableWebBasedSignin": {
424     "os": ["win", "linux", "mac"],
425     "test_policy": { "EnableWebBasedSignin": false }
426   },
427
428   "UserDataDir": {
429     "note": "TODO(joaodasilva): To test that this policy works correctly, it would need to be set before the browser is launched. PolicyPrefsTest should be refactored to support this and a test for this policy added."
430   },
431
432   "DiskCacheDir": {
433     "os": ["win", "mac", "linux"],
434     "test_policy": { "DiskCacheDir": "${user_home}/test-cache" },
435     "pref_mappings": [
436       { "pref": "browser.disk_cache_dir" }
437     ]
438   },
439
440   "DiskCacheSize": {
441     "os": ["win", "mac", "linux"],
442     "test_policy": { "DiskCacheSize": 100 },
443     "pref_mappings": [
444       { "pref": "browser.disk_cache_size" }
445     ]
446   },
447
448   "MediaCacheSize": {
449     "os": ["win", "mac", "linux"],
450     "test_policy": { "MediaCacheSize": 200 },
451     "pref_mappings": [
452       { "pref": "browser.media_cache_size" }
453     ]
454   },
455
456   "DownloadDirectory.0": {
457     "os": ["win", "mac", "linux", "chromeos"],
458     "can_be_recommended": true,
459     "test_policy": { "DownloadDirectory": "${user_home}/test-downloads" },
460     "pref_mappings": [
461       { "pref": "download.default_directory",
462         "indicator_tests": [
463           { "policy": { "DownloadDirectory": "${user_home}/test-downloads" } }
464         ]
465       },
466       { "pref": "download.prompt_for_download",
467         "check_for_recommended" : false,
468         "indicator_tests": [
469           { "policy": { "DownloadDirectory": "${user_home}/test-downloads" } }
470         ]
471       }
472     ]
473   },
474
475   "DownloadDirectory.1": {
476     "os": ["chromeos"],
477     "test_policy": { "DownloadDirectory": "${google_drive}/downloads" },
478     "pref_mappings": [
479       { "pref": "gdata.disabled",
480         "indicator_tests": [
481           { "policy": { "DownloadDirectory": "${google_drive}/downloads" } }
482         ]
483       }
484     ]
485   },
486
487   "ClearSiteDataOnExit": {
488     "note": "This policy is retired, see http://crbug.com/133291."
489   },
490
491   "ProxyMode": {
492     "os": ["win", "mac", "linux"],
493     "test_policy": { "ProxyMode": "direct" },
494     "pref_mappings": [
495       { "pref": "proxy",
496         "indicator_tests": [
497           { "policy": { "ProxyMode": "direct" } }
498         ]
499       }
500     ]
501   },
502
503   "ProxyServerMode": {
504     "os": ["win", "mac", "linux"],
505     "test_policy": { "ProxyServerMode": 0 },
506     "pref_mappings": [
507       { "pref": "proxy",
508         "indicator_tests": [
509           { "policy": { "ProxyServerMode": 0 } }
510         ]
511       }
512     ]
513   },
514
515   "ProxyServer": {
516     "os": ["win", "mac", "linux"],
517     "test_policy": { "ProxyMode": "fixed_servers", "ProxyServer": "http://localhost:8080" },
518     "pref_mappings": [
519       { "pref": "proxy",
520         "indicator_tests": [
521           { "policy": { "ProxyMode": "fixed_servers", "ProxyServer": "http://localhost:8080" } }
522         ]
523       }
524     ]
525   },
526
527   "ProxyPacUrl": {
528     "os": ["win", "mac", "linux"],
529     "test_policy": { "ProxyMode": "pac_script", "ProxyPacUrl": "http://localhost:8080/proxy.pac" },
530     "pref_mappings": [
531       { "pref": "proxy",
532         "indicator_tests": [
533           { "policy": { "ProxyMode": "pac_script", "ProxyPacUrl": "http://localhost:8080/proxy.pac" } }
534         ]
535       }
536     ]
537   },
538
539   "ProxyBypassList": {
540     "os": ["win", "mac", "linux"],
541     "test_policy": { "ProxyMode": "fixed_servers", "ProxyServer": "http://localhost:8080", "ProxyBypassList": "localhost" },
542     "pref_mappings": [
543       { "pref": "proxy",
544         "indicator_tests": [
545           { "policy": { "ProxyMode": "fixed_servers", "ProxyServer": "http://localhost:8080", "ProxyBypassList": "localhost" } }
546         ]
547       }
548     ]
549   },
550
551   "ProxySettings": {
552     "os": ["linux", "win"],
553     "test_policy": { "ProxySettings": { "ProxyMode": "direct" } },
554     "pref_mappings": [
555       { "pref": "proxy",
556         "indicator_tests": [
557           { "policy": { "ProxySettings": { "ProxyMode": "direct" } } }
558         ]
559       }
560     ]
561   },
562
563   "EnableOriginBoundCerts": {
564     "note": "This policy is retired, see http://crbug.com/354749."
565   },
566
567   "DisableSSLRecordSplitting": {
568     "os": ["win", "linux", "mac", "chromeos"],
569     "test_policy": { "DisableSSLRecordSplitting": true },
570     "pref_mappings": [
571       { "pref": "ssl.ssl_record_splitting.disabled",
572         "local_state": true
573       }
574     ]
575   },
576
577   "EnableOnlineRevocationChecks": {
578     "os": ["win", "linux", "mac", "chromeos"],
579     "test_policy": { "EnableOnlineRevocationChecks": true },
580     "pref_mappings": [
581       { "pref": "ssl.rev_checking.enabled",
582         "local_state": true
583       }
584     ]
585   },
586
587   "RequireOnlineRevocationChecksForLocalAnchors": {
588     "os": ["win", "linux", "chromeos"],
589     "test_policy": { "RequireOnlineRevocationChecksForLocalAnchors": true },
590     "pref_mappings": [
591       { "pref": "ssl.rev_checking.required_for_local_anchors",
592         "local_state": true
593       }
594     ]
595   },
596
597   "AuthSchemes": {
598     "os": ["win", "linux", "mac", "chromeos"],
599     "test_policy": { "AuthSchemes": "AuthSchemes" },
600     "pref_mappings": [
601       { "pref": "auth.schemes",
602         "local_state": true
603       }
604     ]
605   },
606
607   "DisableAuthNegotiateCnameLookup": {
608     "os": ["win", "linux", "mac", "chromeos"],
609     "test_policy": { "DisableAuthNegotiateCnameLookup": true },
610     "pref_mappings": [
611       { "pref": "auth.disable_negotiate_cname_lookup",
612         "local_state": true
613       }
614     ]
615   },
616
617   "EnableAuthNegotiatePort": {
618     "os": ["win", "linux", "mac", "chromeos"],
619     "test_policy": { "EnableAuthNegotiatePort": true },
620     "pref_mappings": [
621       { "pref": "auth.enable_negotiate_port",
622         "local_state": true
623       }
624     ]
625   },
626
627   "AuthServerWhitelist": {
628     "os": ["win", "linux", "mac", "chromeos"],
629     "test_policy": { "AuthServerWhitelist": "localhost" },
630     "pref_mappings": [
631       { "pref": "auth.server_whitelist",
632         "local_state": true
633       }
634     ]
635   },
636
637   "AuthNegotiateDelegateWhitelist": {
638     "os": ["win", "linux", "mac", "chromeos"],
639     "test_policy": { "AuthNegotiateDelegateWhitelist": "localhost" },
640     "pref_mappings": [
641       { "pref": "auth.negotiate_delegate_whitelist",
642         "local_state": true
643       }
644     ]
645   },
646
647   "GSSAPILibraryName": {
648     "os": ["mac", "linux"],
649     "test_policy": { "GSSAPILibraryName": "libwhatever.so" },
650     "pref_mappings": [
651       { "pref": "auth.gssapi_library_name",
652         "local_state": true
653       }
654     ]
655   },
656
657   "AllowCrossOriginAuthPrompt": {
658     "os": ["win", "mac", "linux"],
659     "test_policy": { "AllowCrossOriginAuthPrompt": true },
660     "pref_mappings": [
661       { "pref": "auth.allow_cross_origin_prompt",
662         "local_state": true
663       }
664     ]
665   },
666
667   "ExtensionInstallBlacklist": {
668     "os": ["win", "linux", "mac", "chromeos"],
669     "test_policy": { "ExtensionInstallBlacklist": ["*"] },
670     "pref_mappings": [
671       { "pref": "extensions.install.denylist" }
672     ]
673   },
674
675   "ExtensionInstallWhitelist": {
676     "os": ["win", "linux", "mac", "chromeos"],
677     "test_policy": { "ExtensionInstallWhitelist": ["lcncmkcnkcdbbanbjakcencbaoegdjlp"] },
678     "pref_mappings": [
679       { "pref": "extensions.install.allowlist" }
680     ]
681   },
682
683   "ExtensionInstallForcelist": {
684     "os": ["win", "linux", "mac", "chromeos"],
685     "test_policy": { "ExtensionInstallForcelist": ["lcncmkcnkcdbbanbjakcencbaoegdjlp;https://clients2.google.com/service/update2/crx"] },
686     "pref_mappings": [
687       { "pref": "extensions.install.forcelist" }
688     ]
689   },
690
691   "ExtensionInstallSources": {
692     "os": ["win", "linux", "mac", "chromeos"],
693     "test_policy": { "ExtensionInstallSources": ["https://www.corp.monkey.net/*"] },
694     "pref_mappings": [
695       { "pref": "extensions.allowed_install_sites" }
696     ]
697   },
698
699   "ExtensionAllowedTypes": {
700     "os": ["win", "linux", "mac", "chromeos"],
701     "test_policy": { "ExtensionAllowedTypes": ["hosted_app"] },
702     "pref_mappings": [
703       { "pref": "extensions.allowed_types" }
704     ]
705   },
706
707   "ExtensionSettings": {
708     "os": ["win", "linux", "mac", "chromeos"],
709     "test_policy": {
710       "ExtensionSettings": {
711         "abcdefghijklmnopabcdefghijklmnop" : {
712           "installation_mode": "allowed",
713           "blocked_permissions": ["history"]
714         },
715         "bcdefghijklmnopabcdefghijklmnopa" : {
716           "installation_mode": "force_installed",
717           "update_url": "http://example.com/update_url",
718           "allowed_permissions": ["downloads"]
719         },
720         "*": {
721           "installation_mode": "blocked",
722           "blocked_permissions": ["downloads", "bookmarks"],
723           "install_sources": ["http://company-intranet/chromeapps"],
724           "allowed_types": ["hosted_app"]
725         }
726       }
727     },
728     "pref_mappings": [
729       { "pref": "extensions.management" }
730     ]
731   },
732
733   "ShowHomeButton": {
734     "os": ["win", "linux", "mac", "chromeos"],
735     "can_be_recommended": true,
736     "test_policy": { "ShowHomeButton": true },
737     "pref_mappings": [
738       { "pref": "browser.show_home_button",
739         "indicator_tests": [
740           { "policy": { "ShowHomeButton": true } }
741         ]
742       }
743     ]
744   },
745
746   "DeveloperToolsDisabled": {
747     "os": ["win", "linux", "mac", "chromeos"],
748     "test_policy": { "DeveloperToolsDisabled": true },
749     "pref_mappings": [
750       { "pref": "devtools.disabled" }
751     ]
752   },
753
754   "RestoreOnStartup": {
755     "os": ["win", "linux", "mac", "chromeos"],
756     "can_be_recommended": true,
757     "test_policy": { "RestoreOnStartup": 4 },
758     "pref_mappings": [
759       { "pref": "session.restore_on_startup",
760         "indicator_tests": [
761           { "policy": { "RestoreOnStartup": 1 },
762             "value": "1"},
763           { "policy": { "RestoreOnStartup": 4 },
764             "value": "4"},
765           { "policy": { "RestoreOnStartup": 5 },
766             "value": "5"}
767         ]
768       }
769     ]
770   },
771
772   "RestoreOnStartupURLs": {
773     "os": ["win", "linux", "mac", "chromeos"],
774     "can_be_recommended": true,
775     "test_policy": { "RestoreOnStartupURLs": ["chromium.org"] },
776     "pref_mappings": [
777       { "pref": "session.startup_urls",
778         "indicator_tests": [
779           { "policy": { "RestoreOnStartupURLs": ["chromium.org"] } }
780         ]
781       }
782     ]
783   },
784
785   "BlockThirdPartyCookies": {
786     "os": ["win", "linux", "mac", "chromeos"],
787     "can_be_recommended": true,
788     "test_policy": { "BlockThirdPartyCookies": true },
789     "pref_mappings": [
790       { "pref": "profile.block_third_party_cookies",
791         "indicator_tests": [
792           { "policy": { "BlockThirdPartyCookies": true } }
793         ]
794       }
795     ]
796   },
797
798   "DefaultSearchProviderEnabled": {
799     "os": ["win", "linux", "mac", "chromeos"],
800     "test_policy": { "DefaultSearchProviderEnabled": false },
801     "pref_mappings": [
802       { "pref": "default_search_provider_data.template_url_data",
803         "indicator_tests": [
804           { "policy": { "DefaultSearchProviderEnabled": false } },
805           { "policy": { "DefaultSearchProviderEnabled": true, "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google" } }
806         ]
807       }
808     ]
809   },
810
811   "DefaultSearchProviderName": {
812     "os": ["win", "linux", "mac", "chromeos"],
813     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google", "DefaultSearchProviderName": "google.com" },
814     "pref_mappings": [
815       { "pref": "default_search_provider_data.template_url_data" }
816     ]
817   },
818
819   "DefaultSearchProviderKeyword": {
820     "os": ["win", "linux", "mac", "chromeos"],
821     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google" },
822     "pref_mappings": [
823       { "pref": "default_search_provider_data.template_url_data" }
824     ]
825   },
826
827   "DefaultSearchProviderSearchURL": {
828     "os": ["win", "linux", "mac", "chromeos"],
829     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google" },
830     "pref_mappings": [
831       { "pref": "default_search_provider_data.template_url_data",
832         "indicator_selector": "[setting=search-engine]",
833         "indicator_tests": [
834           { "policy": { "DefaultSearchProviderEnabled": true, "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}" } }
835         ]
836       }
837     ]
838   },
839
840   "DefaultSearchProviderSuggestURL": {
841     "os": ["win", "linux", "mac", "chromeos"],
842     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google", "DefaultSearchProviderSuggestURL": "http://www.google.com/suggest?q={searchTerms}" },
843     "pref_mappings": [
844       { "pref": "default_search_provider_data.template_url_data" }
845     ]
846   },
847
848   "DefaultSearchProviderInstantURL": {
849     "os": ["win", "linux", "mac", "chromeos"],
850     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google", "DefaultSearchProviderInstantURL": "http://www.google.com/instant?q={searchTerms}" },
851     "pref_mappings": [
852       { "pref": "default_search_provider_data.template_url_data" }
853     ]
854   },
855
856   "DefaultSearchProviderNewTabURL": {
857     "os": ["win", "linux", "mac", "chromeos"],
858     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google", "DefaultSearchProviderNewTabURL": "http://www.google.com/newtab" },
859     "pref_mappings": [
860       { "pref": "default_search_provider_data.template_url_data" }
861     ]
862   },
863
864   "DefaultSearchProviderIconURL": {
865     "os": ["win", "linux", "mac", "chromeos"],
866     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google", "DefaultSearchProviderIconURL": "http://www.google.com/favicon.ico" },
867     "pref_mappings": [
868       { "pref": "default_search_provider_data.template_url_data" }
869     ]
870   },
871
872   "DefaultSearchProviderEncodings": {
873     "os": ["win", "linux", "mac", "chromeos"],
874     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google", "DefaultSearchProviderEncodings": ["UTF-8"] },
875     "pref_mappings": [
876       { "pref": "default_search_provider_data.template_url_data" }
877     ]
878   },
879
880   "DefaultSearchProviderAlternateURLs": {
881     "os": ["win", "linux", "mac", "chromeos"],
882     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google", "DefaultSearchProviderAlternateURLs": ["http://www.google.com/#q={searchTerms}", "http://www.google.com/search#q={searchTerms}"] },
883     "pref_mappings": [
884       { "pref": "default_search_provider_data.template_url_data" }
885     ]
886   },
887
888   "DefaultSearchProviderSearchTermsReplacementKey": {
889     "os": ["win", "linux", "mac", "chromeos"],
890     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google", "DefaultSearchProviderSearchTermsReplacementKey": "espv" },
891     "pref_mappings": [
892       { "pref": "default_search_provider_data.template_url_data" }
893     ]
894   },
895
896   "DefaultSearchProviderImageURL": {
897     "os": ["win", "linux", "mac", "chromeos"],
898     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google", "DefaultSearchProviderImageURL": "http://www.google.com/searchbyimage/upload" },
899     "pref_mappings": [
900       { "pref": "default_search_provider_data.template_url_data" }
901     ]
902   },
903
904   "DefaultSearchProviderSearchURLPostParams": {
905     "os": ["win", "linux", "mac", "chromeos"],
906     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google", "DefaultSearchProviderSearchURLPostParams": "" },
907     "pref_mappings": [
908       { "pref": "default_search_provider_data.template_url_data" }
909     ]
910   },
911
912   "DefaultSearchProviderSuggestURLPostParams": {
913     "os": ["win", "linux", "mac", "chromeos"],
914     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google", "DefaultSearchProviderSuggestURLPostParams": "" },
915     "pref_mappings": [
916       { "pref": "default_search_provider_data.template_url_data" }
917     ]
918   },
919
920   "DefaultSearchProviderInstantURLPostParams": {
921     "os": ["win", "linux", "mac", "chromeos"],
922     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google", "DefaultSearchProviderInstantURLPostParams": "" },
923     "pref_mappings": [
924       { "pref": "default_search_provider_data.template_url_data" }
925     ]
926   },
927
928   "DefaultSearchProviderImageURLPostParams": {
929     "os": ["win", "linux", "mac", "chromeos"],
930     "test_policy": { "DefaultSearchProviderSearchURL": "http://www.google.com/?q={searchTerms}", "DefaultSearchProviderKeyword": "google", "DefaultSearchProviderImageURLPostParams": "image_content={imageThumbnail},image_url={imageURL},sbisrc={imageSearchSource}" },
931     "pref_mappings": [
932       { "pref": "default_search_provider_data.template_url_data" }
933     ]
934   },
935
936   "DefaultCookiesSetting": {
937     "os": ["win", "linux", "mac", "chromeos"],
938     "test_policy": { "DefaultCookiesSetting": 2 },
939     "pref_mappings": [
940       { "pref": "profile.managed_default_content_settings.cookies",
941         "indicator_selector": "[content-setting=cookies]",
942         "indicator_tests": [
943           { "policy": { "DefaultCookiesSetting": 1 },
944             "value": "allow"},
945           { "policy": { "DefaultCookiesSetting": 2 },
946             "value": "block"},
947           { "policy": { "DefaultCookiesSetting": 4 },
948             "value": "session"}
949         ]
950       }
951     ],
952
953     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
954   },
955
956   "DefaultImagesSetting": {
957     "os": ["win", "linux", "mac", "chromeos"],
958     "test_policy": { "DefaultImagesSetting": 2 },
959     "pref_mappings": [
960       { "pref": "profile.managed_default_content_settings.images",
961         "indicator_selector": "[content-setting=images]",
962         "indicator_tests": [
963           { "policy": { "DefaultImagesSetting": 1 },
964             "value": "allow"},
965           { "policy": { "DefaultImagesSetting": 2 },
966             "value": "block"}
967         ]
968       }
969     ],
970
971     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
972   },
973
974   "DefaultJavaScriptSetting": {
975     "os": ["win", "linux", "mac", "chromeos"],
976     "test_policy": { "DefaultJavaScriptSetting": 2 },
977     "pref_mappings": [
978       { "pref": "profile.managed_default_content_settings.javascript",
979         "indicator_selector": "[content-setting=javascript]",
980         "indicator_tests": [
981           { "policy": { "DefaultJavaScriptSetting": 1 },
982             "value": "allow"},
983           { "policy": { "DefaultJavaScriptSetting": 2 },
984             "value": "block"}
985         ]
986       }
987     ],
988
989     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
990   },
991
992   "DefaultPluginsSetting": {
993     "os": ["win", "linux", "mac", "chromeos"],
994     "test_policy": { "DefaultPluginsSetting": 2 },
995     "pref_mappings": [
996       { "pref": "profile.managed_default_content_settings.plugins",
997         "indicator_selector": "[content-setting=plugins]",
998         "indicator_tests": [
999           { "policy": { "DefaultPluginsSetting": 1 },
1000             "value": "allow"},
1001           { "policy": { "DefaultPluginsSetting": 2 },
1002             "value": "block"},
1003           { "policy": { "DefaultPluginsSetting": 3 },
1004             "value": "ask"}
1005         ]
1006       }
1007     ],
1008
1009     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1010   },
1011
1012   "DefaultPopupsSetting": {
1013     "os": ["win", "linux", "mac", "chromeos"],
1014     "test_policy": { "DefaultPopupsSetting": 2 },
1015     "pref_mappings": [
1016       { "pref": "profile.managed_default_content_settings.popups",
1017         "indicator_selector": "[content-setting=popups]",
1018         "indicator_tests": [
1019           { "policy": { "DefaultPopupsSetting": 1 },
1020             "value": "allow"},
1021           { "policy": { "DefaultPopupsSetting": 2 },
1022             "value": "block"}
1023         ]
1024       }
1025     ],
1026
1027     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1028   },
1029
1030   "DefaultNotificationsSetting": {
1031     "os": ["win", "linux", "mac", "chromeos"],
1032     "test_policy": { "DefaultNotificationsSetting": 2 },
1033     "pref_mappings": [
1034       { "pref": "profile.managed_default_content_settings.notifications",
1035         "indicator_selector": "[content-setting=notifications]",
1036         "indicator_tests": [
1037           { "policy": { "DefaultNotificationsSetting": 1 },
1038             "value": "allow"},
1039           { "policy": { "DefaultNotificationsSetting": 2 },
1040             "value": "block"},
1041           { "policy": { "DefaultNotificationsSetting": 3 },
1042             "value": "ask"}
1043         ]
1044       }
1045     ],
1046
1047     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1048   },
1049
1050   "DefaultGeolocationSetting": {
1051     "os": ["win", "linux", "mac", "chromeos"],
1052     "test_policy": { "DefaultGeolocationSetting": 2 },
1053     "pref_mappings": [
1054       { "pref": "profile.managed_default_content_settings.geolocation",
1055         "indicator_selector": "[content-setting=location]",
1056         "indicator_tests": [
1057           { "policy": { "DefaultGeolocationSetting": 1 },
1058             "value": "allow"},
1059           { "policy": { "DefaultGeolocationSetting": 2 },
1060             "value": "block"},
1061           { "policy": { "DefaultGeolocationSetting": 3 },
1062             "value": "ask"}
1063         ]
1064       }
1065     ],
1066
1067     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1068   },
1069
1070   "DefaultMediaStreamSetting": {
1071     "os": ["win", "linux", "mac", "chromeos"],
1072     "test_policy": { "DefaultMediaStreamSetting": 2 },
1073     "pref_mappings": [
1074       { "pref": "profile.managed_default_content_settings.media_stream",
1075         "indicator_selector": "[content-setting=media-stream]",
1076         "indicator_tests": [
1077           { "policy": { "DefaultMediaStreamSetting": 2 },
1078             "value": "block"
1079           },
1080           { "policy": { "DefaultMediaStreamSetting": 3 },
1081             "value": "ask"
1082           }
1083         ]
1084       }
1085     ],
1086
1087     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1088   },
1089
1090   "AudioCaptureAllowed": {
1091     "os": ["win", "linux", "mac", "chromeos"],
1092     "test_policy": { "AudioCaptureAllowed": false },
1093     "pref_mappings": [
1094       { "pref": "hardware.audio_capture_enabled",
1095         "indicator_selector": "#media-indicator",
1096         "indicator_tests": [
1097           { "policy": { "AudioCaptureAllowed": false } }
1098         ]
1099       }
1100     ]
1101   },
1102
1103   "AudioCaptureAllowedUrls": {
1104     "os": ["win", "linux", "mac", "chromeos"],
1105     "test_policy": { "AudioCaptureAllowedUrls": ["[*.]google.com"] },
1106     "pref_mappings": [
1107       {
1108         "pref": "hardware.audio_capture_allowed_urls"
1109       }
1110     ]
1111   },
1112
1113   "VideoCaptureAllowed": {
1114     "os": ["win", "linux", "mac", "chromeos"],
1115     "test_policy": { "VideoCaptureAllowed": false },
1116     "pref_mappings": [
1117       { "pref": "hardware.video_capture_enabled",
1118         "indicator_selector": "#media-indicator",
1119         "indicator_tests": [
1120           { "policy": { "VideoCaptureAllowed": false } }
1121         ]
1122       }
1123     ]
1124   },
1125
1126   "VideoCaptureAllowedUrls": {
1127     "os": ["win", "linux", "mac", "chromeos"],
1128     "test_policy": { "VideoCaptureAllowedUrls": ["[*.]google.com"] },
1129     "pref_mappings": [
1130       {
1131         "pref": "hardware.video_capture_allowed_urls"
1132       }
1133     ]
1134   },
1135
1136   "AutoSelectCertificateForUrls": {
1137     "os": ["win", "linux", "mac", "chromeos"],
1138     "test_policy": { "AutoSelectCertificateForUrls": ["{'pattern':'https://example.com','filter':{'ISSUER':{'CN': 'issuer-name'}}}"] },
1139     "pref_mappings": [
1140       { "pref": "profile.managed_auto_select_certificate_for_urls" }
1141     ],
1142
1143     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1144   },
1145
1146   "CookiesAllowedForUrls": {
1147     "os": ["win", "linux", "mac", "chromeos"],
1148     "test_policy": { "CookiesAllowedForUrls": ["[*.]google.com"] },
1149     "pref_mappings": [
1150       { "pref": "profile.managed_cookies_allowed_for_urls",
1151         "indicator_test_setup_js": "document.querySelector('button.exceptions-list-button[contentType=cookies]').click();",
1152         "indicator_selector": "[content-exception=cookies]",
1153         "indicator_tests": [
1154           { "policy": { "CookiesAllowedForUrls": ["[*.]google.com"] } }
1155         ]
1156       }
1157     ],
1158
1159     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1160   },
1161
1162   "CookiesBlockedForUrls": {
1163     "os": ["win", "linux", "mac", "chromeos"],
1164     "test_policy": { "CookiesBlockedForUrls": ["[*.]google.com"] },
1165     "pref_mappings": [
1166       { "pref": "profile.managed_cookies_blocked_for_urls",
1167         "indicator_test_setup_js": "document.querySelector('button.exceptions-list-button[contentType=cookies]').click();",
1168         "indicator_selector": "[content-exception=cookies]",
1169         "indicator_tests": [
1170           { "policy": { "CookiesBlockedForUrls": ["[*.]google.com"] } }
1171         ]
1172       }
1173     ],
1174
1175     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1176   },
1177
1178   "CookiesSessionOnlyForUrls": {
1179     "os": ["win", "linux", "mac", "chromeos"],
1180     "test_policy": { "CookiesSessionOnlyForUrls": ["[*.]google.com"] },
1181     "pref_mappings": [
1182       { "pref": "profile.managed_cookies_sessiononly_for_urls",
1183         "indicator_test_setup_js": "document.querySelector('button.exceptions-list-button[contentType=cookies]').click();",
1184         "indicator_selector": "[content-exception=cookies]",
1185         "indicator_tests": [
1186           { "policy": { "CookiesSessionOnlyForUrls": ["[*.]google.com"] } }
1187         ]
1188       }
1189     ],
1190
1191     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1192   },
1193
1194   "ImagesAllowedForUrls": {
1195     "os": ["win", "linux", "mac", "chromeos"],
1196     "test_policy": { "ImagesAllowedForUrls": ["[*.]google.com"] },
1197     "pref_mappings": [
1198       { "pref": "profile.managed_images_allowed_for_urls",
1199         "indicator_test_setup_js": "document.querySelector('button.exceptions-list-button[contentType=images]').click();",
1200         "indicator_selector": "[content-exception=images]",
1201         "indicator_tests": [
1202           { "policy": { "ImagesAllowedForUrls": ["[*.]google.com"] } }
1203         ]
1204       }
1205     ],
1206
1207     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1208   },
1209
1210   "ImagesBlockedForUrls": {
1211     "os": ["win", "linux", "mac", "chromeos"],
1212     "test_policy": { "ImagesBlockedForUrls": ["[*.]google.com"] },
1213     "pref_mappings": [
1214       { "pref": "profile.managed_images_blocked_for_urls",
1215         "indicator_test_setup_js": "document.querySelector('button.exceptions-list-button[contentType=images]').click();",
1216         "indicator_selector": "[content-exception=images]",
1217         "indicator_tests": [
1218           { "policy": { "ImagesBlockedForUrls": ["[*.]google.com"] } }
1219         ]
1220       }
1221     ],
1222
1223     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1224   },
1225
1226   "JavaScriptAllowedForUrls": {
1227     "os": ["win", "linux", "mac", "chromeos"],
1228     "test_policy": { "JavaScriptAllowedForUrls": ["[*.]google.com"] },
1229     "pref_mappings": [
1230       { "pref": "profile.managed_javascript_allowed_for_urls",
1231         "indicator_test_setup_js": "document.querySelector('button.exceptions-list-button[contentType=javascript]').click();",
1232         "indicator_selector": "[content-exception=javascript]",
1233         "indicator_tests": [
1234           { "policy": { "JavaScriptAllowedForUrls": ["[*.]google.com"] } }
1235         ]
1236       }
1237     ],
1238
1239     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1240   },
1241
1242   "JavaScriptBlockedForUrls": {
1243     "os": ["win", "linux", "mac", "chromeos"],
1244     "test_policy": { "JavaScriptBlockedForUrls": ["[*.]google.com"] },
1245     "pref_mappings": [
1246       { "pref": "profile.managed_javascript_blocked_for_urls",
1247         "indicator_test_setup_js": "document.querySelector('button.exceptions-list-button[contentType=javascript]').click();",
1248         "indicator_selector": "[content-exception=javascript]",
1249         "indicator_tests": [
1250           { "policy": { "JavaScriptBlockedForUrls": ["[*.]google.com"] } }
1251         ]
1252       }
1253     ],
1254
1255     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1256   },
1257
1258   "PluginsAllowedForUrls": {
1259     "os": ["win", "linux", "mac", "chromeos"],
1260     "test_policy": { "PluginsAllowedForUrls": ["[*.]google.com"] },
1261     "pref_mappings": [
1262       { "pref": "profile.managed_plugins_allowed_for_urls",
1263         "indicator_test_setup_js": "document.querySelector('button.exceptions-list-button[contentType=plugins]').click();",
1264         "indicator_selector": "[content-exception=plugins]",
1265         "indicator_tests": [
1266           { "policy": { "PluginsAllowedForUrls": ["[*.]google.com"] } }
1267         ]
1268       }
1269     ],
1270
1271     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1272   },
1273
1274   "PluginsBlockedForUrls": {
1275     "os": ["win", "linux", "mac", "chromeos"],
1276     "test_policy": { "PluginsBlockedForUrls": ["[*.]google.com"] },
1277     "pref_mappings": [
1278       { "pref": "profile.managed_plugins_blocked_for_urls",
1279         "indicator_test_setup_js": "document.querySelector('button.exceptions-list-button[contentType=plugins]').click();",
1280         "indicator_selector": "[content-exception=plugins]",
1281         "indicator_tests": [
1282           { "policy": { "PluginsBlockedForUrls": ["[*.]google.com"] } }
1283         ]
1284       }
1285     ],
1286
1287     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1288   },
1289
1290   "PopupsAllowedForUrls": {
1291     "os": ["win", "linux", "mac", "chromeos"],
1292     "test_policy": { "PopupsAllowedForUrls": ["[*.]google.com"] },
1293     "pref_mappings": [
1294       { "pref": "profile.managed_popups_allowed_for_urls",
1295         "indicator_test_setup_js": "document.querySelector('button.exceptions-list-button[contentType=popups]').click();",
1296         "indicator_selector": "[content-exception=popups]",
1297         "indicator_tests": [
1298           { "policy": { "PopupsAllowedForUrls": ["[*.]google.com"] } }
1299         ]
1300       }
1301     ],
1302
1303     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1304   },
1305
1306   "PopupsBlockedForUrls": {
1307     "os": ["win", "linux", "mac", "chromeos"],
1308     "test_policy": { "PopupsBlockedForUrls": ["[*.]google.com"] },
1309     "pref_mappings": [
1310       { "pref": "profile.managed_popups_blocked_for_urls",
1311         "indicator_test_setup_js": "document.querySelector('button.exceptions-list-button[contentType=popups]').click();",
1312         "indicator_selector": "[content-exception=popups]",
1313         "indicator_tests": [
1314           { "policy": { "PopupsBlockedForUrls": ["[*.]google.com"] } }
1315         ]
1316       }
1317     ],
1318
1319     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1320   },
1321
1322   "NotificationsAllowedForUrls": {
1323     "os": ["win", "linux", "mac", "chromeos"],
1324     "test_policy": { "NotificationsAllowedForUrls": ["[*.]google.com"] },
1325     "pref_mappings": [
1326       { "pref": "profile.managed_notifications_allowed_for_urls",
1327         "indicator_test_setup_js": "document.querySelector('button.exceptions-list-button[contentType=notifications]').click();",
1328         "indicator_selector": "[content-exception=notifications]",
1329         "indicator_tests": [
1330           { "policy": { "NotificationsAllowedForUrls": ["[*.]google.com"] } }
1331         ]
1332       }
1333     ],
1334
1335     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1336   },
1337
1338   "NotificationsBlockedForUrls": {
1339     "os": ["win", "linux", "mac", "chromeos"],
1340     "test_policy": { "NotificationsBlockedForUrls": ["[*.]google.com"] },
1341     "pref_mappings": [
1342       { "pref": "profile.managed_notifications_blocked_for_urls",
1343         "indicator_test_setup_js": "document.querySelector('button.exceptions-list-button[contentType=notifications]').click();",
1344         "indicator_selector": "[content-exception=notifications]",
1345         "indicator_tests": [
1346           { "policy": { "NotificationsBlockedForUrls": ["[*.]google.com"] } }
1347         ]
1348       }
1349     ],
1350
1351     "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
1352   },
1353
1354   "Disable3DAPIs": {
1355     "os": ["win", "linux", "mac", "chromeos"],
1356     "test_policy": { "Disable3DAPIs": true },
1357     "pref_mappings": [
1358       { "pref": "disable_3d_apis" }
1359     ]
1360   },
1361
1362   "InstantEnabled": {
1363   },
1364
1365   "TranslateEnabled": {
1366     "os": ["win", "linux", "mac", "chromeos"],
1367     "can_be_recommended": true,
1368     "test_policy": { "TranslateEnabled": false },
1369     "pref_mappings": [
1370       { "pref": "translate.enabled",
1371         "indicator_tests": [
1372           { "policy": { "TranslateEnabled": true } }
1373         ]
1374       }
1375     ]
1376   },
1377
1378   "AllowOutdatedPlugins": {
1379     "os": ["win", "linux", "mac", "chromeos"],
1380     "test_policy": { "AllowOutdatedPlugins": true },
1381     "pref_mappings": [
1382       { "pref": "plugins.allow_outdated" }
1383     ]
1384   },
1385
1386   "AlwaysAuthorizePlugins": {
1387     "os": ["win", "linux", "mac", "chromeos"],
1388     "test_policy": { "AlwaysAuthorizePlugins": true },
1389     "pref_mappings": [
1390       { "pref": "plugins.always_authorize" }
1391     ]
1392   },
1393
1394   "BookmarkBarEnabled": {
1395     "os": ["win", "linux", "mac", "chromeos"],
1396     "can_be_recommended": true,
1397     "test_policy": { "BookmarkBarEnabled": true },
1398     "pref_mappings": [
1399       { "pref": "bookmark_bar.show_on_all_tabs",
1400         "indicator_tests": [
1401           { "policy": { "BookmarkBarEnabled": true } }
1402         ]
1403       }
1404     ]
1405   },
1406
1407   "EditBookmarksEnabled": {
1408     "os": ["win", "linux", "mac", "chromeos"],
1409     "test_policy": { "EditBookmarksEnabled": false },
1410     "pref_mappings": [
1411       { "pref": "bookmarks.editing_enabled" }
1412     ]
1413   },
1414
1415   "ShowAppsShortcutInBookmarkBar": {
1416     "os": ["win", "linux", "mac"],
1417     "test_policy": { "ShowAppsShortcutInBookmarkBar": false },
1418     "pref_mappings": [
1419       { "pref": "bookmark_bar.show_apps_shortcut" }
1420     ]
1421   },
1422
1423   "AllowFileSelectionDialogs": {
1424     "os": ["win", "mac", "linux"],
1425     "test_policy": { "AllowFileSelectionDialogs": false },
1426     "pref_mappings": [
1427       { "pref": "select_file_dialogs.allowed",
1428         "local_state": true
1429       },
1430       { "pref": "download.prompt_for_download",
1431         "indicator_tests": [
1432           { "policy": { "AllowFileSelectionDialogs": false } }
1433         ]
1434       }
1435     ]
1436   },
1437
1438   "ImportBookmarks": {
1439     "os": ["win", "mac", "linux"],
1440     "can_be_recommended": true,
1441     "test_policy": { "ImportBookmarks": false },
1442     "pref_mappings": [
1443       { "pref": "import_bookmarks",
1444         "indicator_tests": [
1445           { "policy": { "ImportBookmarks": false } }
1446         ]
1447       }
1448     ]
1449   },
1450
1451   "ImportHistory": {
1452     "os": ["win", "mac", "linux"],
1453     "can_be_recommended": true,
1454     "test_policy": { "ImportHistory": false },
1455     "pref_mappings": [
1456       { "pref": "import_history",
1457         "indicator_tests": [
1458           { "policy": { "ImportHistory": false } }
1459         ]
1460       }
1461     ]
1462   },
1463
1464   "ImportHomepage": {
1465     "os": ["win", "mac", "linux"],
1466     "test_policy": { "ImportHomepage": false },
1467     "pref_mappings": [
1468       { "pref": "import_home_page" }
1469     ]
1470   },
1471
1472   "ImportSearchEngine": {
1473     "os": ["win", "mac", "linux"],
1474     "can_be_recommended": true,
1475     "test_policy": { "ImportSearchEngine": false },
1476     "pref_mappings": [
1477       { "pref": "import_search_engine",
1478         "indicator_tests": [
1479           { "policy": { "ImportSearchEngine": false } }
1480         ]
1481       }
1482     ]
1483   },
1484
1485   "ImportSavedPasswords": {
1486     "os": ["win", "mac", "linux"],
1487     "can_be_recommended": true,
1488     "test_policy": { "ImportSavedPasswords": false },
1489     "pref_mappings": [
1490       { "pref": "import_saved_passwords",
1491         "indicator_tests": [
1492           { "policy": { "ImportSavedPasswords": false } }
1493         ]
1494       }
1495     ]
1496   },
1497
1498   "ImportAutofillFormData": {
1499     "os": ["win", "mac", "linux"],
1500     "can_be_recommended": true,
1501     "test_policy": { "ImportAutofillFormData": false },
1502     "pref_mappings": [
1503       { "pref": "import_autofill_form_data",
1504         "indicator_tests": [
1505           { "policy": { "ImportAutofillFormData": false } }
1506         ]
1507       }
1508     ]
1509   },
1510
1511   "MaxConnectionsPerProxy": {
1512     "os": ["win", "linux", "mac", "chromeos"],
1513     "test_policy": { "MaxConnectionsPerProxy": 16 },
1514     "pref_mappings": [
1515       { "pref": "net.max_connections_per_proxy",
1516         "local_state": true
1517       }
1518     ]
1519   },
1520
1521   "HideWebStorePromo": {
1522   },
1523
1524   "URLBlacklist": {
1525     "os": ["win", "linux", "mac", "chromeos"],
1526     "test_policy": { "URLBlacklist": ["google.com"] },
1527     "pref_mappings": [
1528       { "pref": "policy.url_blacklist" }
1529     ]
1530   },
1531
1532   "URLWhitelist": {
1533     "os": ["win", "linux", "mac", "chromeos"],
1534     "test_policy": { "URLWhitelist": ["google.com"] },
1535     "pref_mappings": [
1536       { "pref": "policy.url_whitelist" }
1537     ]
1538   },
1539
1540   "EnterpriseWebStoreURL": {
1541     "note": "This policy is retired, see http://crbug.com/178938."
1542   },
1543
1544   "EnterpriseWebStoreName": {
1545     "note": "This policy is retired, see http://crbug.com/178938."
1546   },
1547
1548   "EnableMemoryInfo": {
1549     "note": "This policy is retired, see http://crbug.com/350339."
1550   },
1551
1552   "DisablePrintPreview": {
1553     "os": ["win", "mac", "linux"],
1554     "test_policy": { "DisablePrintPreview": false },
1555     "pref_mappings": [
1556       { "pref": "printing.print_preview_disabled" }
1557     ]
1558   },
1559
1560   "BackgroundModeEnabled": {
1561     "os": ["win", "linux"],
1562     "can_be_recommended": true,
1563     "test_policy": { "BackgroundModeEnabled": false },
1564     "pref_mappings": [
1565       { "pref": "background_mode.enabled",
1566         "local_state": true,
1567         "indicator_tests": [
1568           { "policy": { "BackgroundModeEnabled": false } }
1569         ]
1570       }
1571     ]
1572   },
1573
1574   "RestrictSigninToPattern": {
1575     "os": ["win", "mac", "linux"],
1576     "test_policy": { "RestrictSigninToPattern": ".*@google.com" },
1577     "pref_mappings": [
1578       { "pref": "google.services.username_pattern",
1579         "local_state": true
1580       }
1581     ]
1582   },
1583
1584   "DisableSafeBrowsingProceedAnyway": {
1585     "os": ["win", "linux", "mac", "chromeos"],
1586     "test_policy": { "DisableSafeBrowsingProceedAnyway": true },
1587     "pref_mappings": [
1588       { "pref": "safebrowsing.proceed_anyway_disabled" }
1589     ]
1590   },
1591
1592   "SpellCheckServiceEnabled": {
1593     "os": ["win", "linux", "mac", "chromeos"],
1594     "official_only": true,
1595     "can_be_recommended": true,
1596     "test_policy": { "SpellCheckServiceEnabled": false },
1597     "pref_mappings": [
1598       { "pref": "spellcheck.use_spelling_service",
1599         "indicator_tests": [
1600           { "policy": { "SpellCheckServiceEnabled": false } }
1601         ]
1602       }
1603     ]
1604   },
1605
1606   "DisableScreenshots": {
1607     "os": ["win", "linux", "mac", "chromeos"],
1608     "test_policy": { "DisableScreenshots": true },
1609     "pref_mappings": [
1610       { "pref": "disable_screenshots" }
1611     ]
1612   },
1613
1614   "BuiltInDnsClientEnabled": {
1615     "os": ["win", "linux", "mac"],
1616     "test_policy": { "BuiltInDnsClientEnabled": true },
1617     "pref_mappings": [
1618       { "pref": "async_dns.enabled",
1619         "local_state": true
1620       }
1621     ]
1622   },
1623
1624   "WPADQuickCheckEnabled": {
1625     "os": ["win", "linux", "mac", "chromeos"],
1626     "test_policy": { "WPADQuickCheckEnabled": true },
1627     "pref_mappings": [
1628       { "pref": "proxy.quick_check_enabled",
1629         "local_state": true
1630       }
1631     ]
1632   },
1633
1634   "RegisteredProtocolHandlers": {
1635     "os": ["win", "linux", "mac", "chromeos"],
1636     "can_be_recommended": true,
1637     "test_policy": { "RegisteredProtocolHandlers": {"protocol": "test", "url": "http://example.com/%s", "default": "true"} },
1638     "pref_mappings": [
1639       { "pref": "custom_handlers.policy.registered_protocol_handlers",
1640         "check_for_mandatory": false
1641       }
1642     ]
1643   },
1644
1645   "HideWebStoreIcon": {
1646     "os": ["win", "linux", "mac", "chromeos"],
1647     "test_policy": { "HideWebStoreIcon": true },
1648     "pref_mappings": [
1649       { "pref": "hide_web_store_icon" }
1650     ]
1651   },
1652
1653   "VariationsRestrictParameter": {
1654     "test_policy": { "VariationsRestrictParameter": "restricted" },
1655     "pref_mappings": [
1656       { "pref": "variations_restrict_parameter",
1657         "local_state": true
1658       }
1659     ]
1660   },
1661
1662   "DataCompressionProxyEnabled": {
1663     "os": ["android"],
1664     "test_policy": { "DataCompressionProxyEnabled": false },
1665     "pref_mappings": [
1666       { "pref": "spdy_proxy.enabled" }
1667     ]
1668   },
1669
1670   "ForceEphemeralProfiles": {
1671   },
1672
1673   "UserAvatarImage": {
1674     "os": ["chromeos"],
1675     "test_policy": {
1676       "UserAvatarImage": {
1677         "url": "http://localhost/",
1678         "hash": "deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef"
1679       }
1680     },
1681     "indicator_selector": "#account-picture-indicator"
1682   },
1683
1684   "WallpaperImage": {
1685     "os": ["chromeos"],
1686     "test_policy": {
1687       "WallpaperImage": {
1688         "url": "http://localhost/",
1689         "hash": "baddecafbaddecafbaddecafbaddecafbaddecafbaddecafbaddecafbaddecaf"
1690       }
1691     },
1692     "indicator_selector": "#wallpaper-indicator"
1693   },
1694
1695   "BrowserGuestModeEnabled": {
1696     "os": ["win", "linux", "mac"],
1697     "test_policy": { "BrowserGuestModeEnabled": true },
1698     "pref_mappings": [
1699       { "pref": "profile.browser_guest_enabled",
1700         "local_state": true
1701       }
1702     ]
1703   },
1704
1705   "BrowserAddPersonEnabled": {
1706     "os": ["win", "linux", "mac"],
1707     "test_policy": { "BrowserAddPersonEnabled": true },
1708     "pref_mappings": [
1709       { "pref": "profile.add_person_enabled",
1710         "local_state": true
1711       }
1712     ]
1713   },
1714
1715   "SSLVersionMin": {
1716     "os": ["win", "linux", "mac", "chromeos"],
1717     "test_policy": { "SSLVersionMin": "tls1.2" },
1718     "pref_mappings": []
1719   },
1720
1721   "SSLVersionFallbackMin": {
1722     "os": ["win", "linux", "mac", "chromeos"],
1723     "test_policy": { "SSLVersionFallbackMin": "tls1.2" },
1724     "pref_mappings": []
1725   },
1726
1727   "----- Chrome OS policies ------------------------------------------------": {},
1728
1729   "ChromeOsLockOnIdleSuspend": {
1730     "os": ["chromeos"],
1731     "can_be_recommended": true,
1732     "test_policy": { "ChromeOsLockOnIdleSuspend": true },
1733     "pref_mappings": [
1734       { "pref": "settings.enable_screen_lock",
1735         "indicator_tests": [
1736           { "policy": { "ChromeOsLockOnIdleSuspend": true } }
1737         ]
1738       }
1739     ]
1740   },
1741
1742   "PolicyRefreshRate": {
1743     "os": ["chromeos"],
1744     "test_policy": { "PolicyRefreshRate": 300000 },
1745     "pref_mappings": [
1746       { "pref": "policy.user_refresh_rate",
1747         "local_state": true
1748       }
1749     ]
1750   },
1751
1752   "MaxInvalidationFetchDelay": {
1753     "os": ["win", "linux", "mac", "chromeos"],
1754     "test_policy": { "PolicyRefreshRate": 15000 },
1755     "pref_mappings": []
1756   },
1757
1758   "OpenNetworkConfiguration": {
1759   },
1760
1761   "SAMLOfflineSigninTimeLimit": {
1762     "os": ["chromeos"],
1763     "test_policy": { "SAMLOfflineSigninTimeLimit": 0 },
1764     "pref_mappings": [
1765       { "pref": "saml.offline_signin_time_limit" }
1766     ]
1767   },
1768
1769   "DriveDisabled": {
1770     "os": ["chromeos"],
1771     "test_policy": { "DriveDisabled": true },
1772     "pref_mappings": [
1773       { "pref": "gdata.disabled",
1774         "indicator_tests": [
1775           { "policy": { "DriveDisabled": true } }
1776         ]
1777       }
1778     ]
1779   },
1780
1781   "DriveDisabledOverCellular": {
1782     "os": ["chromeos"],
1783     "test_policy": { "DriveDisabledOverCellular": true },
1784     "pref_mappings": [
1785       { "pref": "gdata.cellular.disabled" }
1786     ]
1787   },
1788
1789   "PinnedLauncherApps": {
1790     "os": ["chromeos"],
1791     "can_be_recommended": true,
1792     "test_policy": { "PinnedLauncherApps": [] },
1793     "pref_mappings": [
1794       { "pref": "pinned_launcher_apps" }
1795     ]
1796   },
1797
1798   "ExternalStorageDisabled": {
1799     "os": ["chromeos"],
1800     "test_policy": { "ExternalStorageDisabled": true },
1801     "pref_mappings": [
1802       { "pref": "hardware.external_storage_disabled" }
1803     ]
1804   },
1805
1806   "AudioOutputAllowed": {
1807     "os": ["chromeos"],
1808     "test_policy": { "AudioOutputAllowed": true },
1809     "pref_mappings": [
1810       { "pref": "hardware.audio_output_enabled",
1811         "local_state": true }
1812     ]
1813   },
1814
1815   "AudioCaptureAllowed": {
1816     "os": ["chromeos"],
1817     "test_policy": { "AudioCaptureAllowed": true },
1818     "pref_mappings": [
1819       { "pref": "hardware.audio_capture_enabled",
1820         "local_state": true }
1821     ]
1822   },
1823
1824   "ShowLogoutButtonInTray": {
1825     "os": ["chromeos"],
1826     "test_policy": { "ShowLogoutButtonInTray": true },
1827     "pref_mappings": [
1828       { "pref": "show_logout_button_in_tray" }
1829     ]
1830   },
1831
1832   "ShelfAutoHideBehavior": {
1833     "os": ["chromeos"],
1834     "test_policy": { "ShelfAutoHideBehavior": "Always" },
1835     "pref_mappings": [
1836       { "pref": "auto_hide_behavior_local" }
1837     ]
1838   },
1839
1840   "UserDisplayName": {
1841     "os": ["chromeos"]
1842   },
1843
1844   "SessionLengthLimit": {
1845     "os": ["chromeos"],
1846     "test_policy": { "SessionLengthLimit": 3600000 },
1847     "pref_mappings": [
1848       { "pref": "session.length_limit",
1849         "local_state": true }
1850     ]
1851   },
1852
1853   "ScreenDimDelayAC": {
1854     "os": ["chromeos"],
1855     "test_policy": { "ScreenDimDelayAC": 420000 },
1856     "pref_mappings": [
1857       { "pref": "power.ac_screen_dim_delay_ms" }
1858     ]
1859   },
1860
1861   "ScreenOffDelayAC": {
1862     "os": ["chromeos"],
1863     "test_policy": { "ScreenOffDelayAC": 480000 },
1864     "pref_mappings": [
1865       { "pref": "power.ac_screen_off_delay_ms" }
1866     ]
1867   },
1868
1869   "ScreenLockDelayAC": {
1870     "os": ["chromeos"],
1871     "test_policy": { "ScreenLockDelayAC": 600000 },
1872     "pref_mappings": [
1873       { "pref": "power.ac_screen_lock_delay_ms" }
1874     ]
1875   },
1876
1877   "IdleWarningDelayAC": {
1878     "os": ["chromeos"],
1879     "test_policy": { "IdleWarningDelayAC": 1800000 },
1880     "pref_mappings": [
1881       { "pref": "power.ac_idle_warning_delay_ms" }
1882     ]
1883   },
1884
1885   "IdleDelayAC": {
1886     "os": ["chromeos"],
1887     "test_policy": { "IdleDelayAC": 1800000 },
1888     "pref_mappings": [
1889       { "pref": "power.ac_idle_delay_ms" }
1890     ]
1891   },
1892
1893   "ScreenDimDelayBattery": {
1894     "os": ["chromeos"],
1895     "test_policy": { "ScreenDimDelayBattery": 300000 },
1896     "pref_mappings": [
1897       { "pref": "power.battery_screen_dim_delay_ms" }
1898     ]
1899   },
1900
1901   "ScreenOffDelayBattery": {
1902     "os": ["chromeos"],
1903     "test_policy": { "ScreenOffDelayBattery": 360000 },
1904     "pref_mappings": [
1905       { "pref": "power.battery_screen_off_delay_ms" }
1906     ]
1907   },
1908
1909   "ScreenLockDelayBattery": {
1910     "os": ["chromeos"],
1911     "test_policy": { "ScreenLockDelayBattery": 600000 },
1912     "pref_mappings": [
1913       { "pref": "power.battery_screen_lock_delay_ms"  }
1914     ]
1915   },
1916
1917   "IdleWarningDelayBattery": {
1918     "os": ["chromeos"],
1919     "test_policy": { "IdleWarningDelayBattery": 600000 },
1920     "pref_mappings": [
1921       { "pref": "power.battery_idle_warning_delay_ms" }
1922     ]
1923   },
1924
1925   "IdleDelayBattery": {
1926     "os": ["chromeos"],
1927     "test_policy": { "IdleDelayBattery": 600000 },
1928     "pref_mappings": [
1929       { "pref": "power.battery_idle_delay_ms" }
1930     ]
1931   },
1932
1933   "IdleAction": {
1934     "os": ["chromeos"],
1935     "test_policy": { "IdleAction": 0 },
1936     "pref_mappings": [
1937       { "pref": "power.ac_idle_action" },
1938       { "pref": "power.battery_idle_action" }
1939     ]
1940   },
1941
1942   "IdleActionAC": {
1943     "os": ["chromeos"],
1944     "test_policy": { "IdleActionAC": 0 },
1945     "pref_mappings": [
1946       { "pref": "power.ac_idle_action" }
1947     ]
1948   },
1949
1950   "IdleActionBattery": {
1951     "os": ["chromeos"],
1952     "test_policy": { "IdleActionBattery": 0 },
1953     "pref_mappings": [
1954       { "pref": "power.battery_idle_action" }
1955     ]
1956   },
1957
1958   "LidCloseAction": {
1959     "os": ["chromeos"],
1960     "test_policy": { "LidCloseAction": 0 },
1961     "pref_mappings": [
1962       { "pref": "power.lid_closed_action" }
1963     ]
1964   },
1965
1966   "PowerManagementUsesAudioActivity": {
1967     "os": ["chromeos"],
1968     "test_policy": { "PowerManagementUsesAudioActivity": true },
1969     "pref_mappings": [
1970       { "pref": "power.use_audio_activity" }
1971     ]
1972   },
1973
1974   "PowerManagementUsesVideoActivity": {
1975     "os": ["chromeos"],
1976     "test_policy": { "PowerManagementUsesVideoActivity": true },
1977     "pref_mappings": [
1978       { "pref": "power.use_video_activity" }
1979     ]
1980   },
1981
1982   "PresentationIdleDelayScale": {
1983   },
1984
1985   "PresentationScreenDimDelayScale": {
1986     "os": ["chromeos"],
1987     "test_policy": { "PresentationScreenDimDelayScale": 200 },
1988     "pref_mappings": [
1989       { "pref": "power.presentation_screen_dim_delay_factor" }
1990     ]
1991   },
1992
1993   "AllowScreenWakeLocks": {
1994     "os": ["chromeos"],
1995     "test_policy": { "AllowScreenWakeLocks": false },
1996     "pref_mappings": [
1997       { "pref": "power.allow_screen_wake_locks" }
1998     ]
1999   },
2000
2001   "UserActivityScreenDimDelayScale": {
2002     "os": ["chromeos"],
2003     "test_policy": { "UserActivityScreenDimDelayScale": 200 },
2004     "pref_mappings": [
2005       { "pref": "power.user_activity_screen_dim_delay_factor" }
2006     ]
2007   },
2008
2009   "WaitForInitialUserActivity": {
2010     "os": ["chromeos"],
2011     "test_policy": { "WaitForInitialUserActivity": true },
2012     "pref_mappings": [
2013       { "pref": "session.wait_for_initial_user_activity",
2014         "local_state": true },
2015       { "pref": "power.wait_for_initial_user_activity" }
2016     ]
2017   },
2018
2019   "PowerManagementIdleSettings": {
2020     "os": ["chromeos"],
2021     "test_policy": { "PowerManagementIdleSettings" : { "AC": { "Delays": { "ScreenDim": 5000, "ScreenOff": 7000, "IdleWarning": 8000, "Idle": 9000 }, "IdleAction": "Logout" }, "Battery": { "Delays": { "ScreenDim": 1000, "ScreenOff": 3000, "IdleWarning": 4000, "Idle": 5000 }, "IdleAction": "Logout"} } },
2022     "pref_mappings": [
2023       { "pref": "power.ac_screen_dim_delay_ms" },
2024       { "pref": "power.ac_screen_off_delay_ms" },
2025       { "pref": "power.ac_idle_warning_delay_ms" },
2026       { "pref": "power.ac_idle_delay_ms" },
2027       { "pref": "power.battery_screen_dim_delay_ms" },
2028       { "pref": "power.battery_screen_off_delay_ms" },
2029       { "pref": "power.battery_idle_warning_delay_ms" },
2030       { "pref": "power.battery_idle_delay_ms" }
2031     ]
2032   },
2033
2034   "ScreenLockDelays": {
2035     "os": ["chromeos"],
2036     "test_policy": { "ScreenLockDelays": { "AC": 6000, "Battery": 2000 } },
2037     "pref_mappings": [
2038       { "pref": "power.ac_screen_lock_delay_ms" },
2039       { "pref": "power.battery_screen_lock_delay_ms" }
2040     ]
2041   },
2042
2043   "TermsOfServiceURL": {
2044     "os": ["chromeos"],
2045     "test_policy": { "TermsOfServiceURL": "http://www.example.com/terms_of_service.txt" },
2046     "pref_mappings": [
2047       { "pref": "terms_of_service.url" }
2048     ]
2049   },
2050
2051   "ShowAccessibilityOptionsInSystemTrayMenu": {
2052     "os": ["chromeos"],
2053     "test_policy": { "ShowAccessibilityOptionsInSystemTrayMenu": true },
2054     "pref_mappings": [
2055       { "pref": "settings.a11y.enable_menu",
2056         "indicator_tests": [
2057           { "policy": { "ShowAccessibilityOptionsInSystemTrayMenu": true } }
2058         ]
2059       }
2060     ]
2061   },
2062
2063   "LargeCursorEnabled": {
2064     "os": ["chromeos"],
2065     "test_policy": { "LargeCursorEnabled": true },
2066     "pref_mappings": [
2067       { "pref": "settings.a11y.large_cursor_enabled",
2068         "indicator_tests": [
2069           { "policy": { "LargeCursorEnabled": true } }
2070         ]
2071       }
2072     ]
2073   },
2074
2075   "SpokenFeedbackEnabled": {
2076     "os": ["chromeos"],
2077     "test_policy": { "SpokenFeedbackEnabled": true },
2078     "pref_mappings": [
2079       { "pref": "settings.accessibility",
2080         "indicator_tests": [
2081           { "policy": { "SpokenFeedbackEnabled": true } }
2082         ]
2083       }
2084     ]
2085   },
2086
2087   "HighContrastEnabled": {
2088     "os": ["chromeos"],
2089     "test_policy": { "HighContrastEnabled": true },
2090     "pref_mappings": [
2091       { "pref": "settings.a11y.high_contrast_enabled",
2092         "indicator_tests": [
2093           { "policy": { "HighContrastEnabled": true } }
2094         ]
2095       }
2096     ]
2097   },
2098
2099   "ScreenMagnifierType": {
2100     "os": ["chromeos"],
2101     "test_policy": { "ScreenMagnifierType": 1 },
2102     "pref_mappings": [
2103       { "pref": "settings.a11y.screen_magnifier",
2104         "indicator_tests": [
2105           { "policy": { "ScreenMagnifierType": 1 } }
2106         ]
2107       },
2108       { "pref": "settings.a11y.screen_magnifier_type2" }
2109     ]
2110   },
2111
2112   "VirtualKeyboardEnabled": {
2113     "os": ["chromeos"],
2114     "test_policy": { "VirtualKeyboardEnabled": true },
2115     "pref_mappings": [
2116       { "pref": "settings.a11y.virtual_keyboard",
2117         "indicator_tests": [
2118           { "policy": { "VirtualKeyboardEnabled": true } }
2119         ]
2120       }
2121     ]
2122   },
2123
2124   "KeyboardDefaultToFunctionKeys": {
2125     "os": ["chromeos"],
2126     "test_policy": { "KeyboardDefaultToFunctionKeys": true },
2127     "pref_mappings": [
2128       { "pref": "settings.language.send_function_keys",
2129         "indicator_tests": [
2130           { "policy": { "KeyboardDefaultToFunctionKeys": true } }
2131         ]
2132       }
2133     ]
2134   },
2135
2136   "AttestationEnabledForUser": {
2137     "os": ["chromeos"],
2138     "test_policy": { "AttestationEnabledForUser": true },
2139     "pref_mappings": [
2140       { "pref": "attestation.enabled" }
2141     ]
2142   },
2143
2144   "AttestationExtensionWhitelist": {
2145     "os": ["chromeos"],
2146     "test_policy": { "AttestationExtensionWhitelist": ["test_ext_id1", "test_ext_id2"] },
2147     "pref_mappings": [
2148       { "pref": "attestation.extension_whitelist" }
2149     ]
2150   },
2151
2152   "ContentPackDefaultFilteringBehavior": {
2153   },
2154
2155   "ContentPackManualBehaviorHosts": {
2156   },
2157
2158   "ContentPackManualBehaviorURLs": {
2159   },
2160
2161   "ManagedBookmarks": {
2162   },
2163
2164   "FullscreenAllowed": {
2165     "os": ["win", "linux", "chromeos"],
2166     "test_policy": { "FullscreenAllowed": false },
2167     "pref_mappings": [
2168       { "pref": "fullscreen.allowed" },
2169       { "pref": "apps.fullscreen.allowed" }
2170     ]
2171   },
2172
2173   "ChromeOsMultiProfileUserBehavior": {
2174     "os": ["chromeos"],
2175     "test_policy": { "ChromeOsMultiProfileUserBehavior": "unrestricted" },
2176     "pref_mappings": [
2177       { "pref": "settings.multiprofile_user_behavior" }
2178     ]
2179   },
2180
2181   "NativeMessagingBlacklist": {
2182     "os": ["win", "linux", "mac"],
2183     "test_policy": { "NativeMessagingBlacklist": ["*"] },
2184     "pref_mappings": [
2185       { "pref": "native_messaging.blacklist" }
2186     ]
2187   },
2188
2189   "NativeMessagingWhitelist": {
2190     "os": ["win", "linux", "mac"],
2191     "test_policy": { "NativeMessagingWhitelist": ["native.messaging.host.name"] },
2192     "pref_mappings": [
2193       { "pref": "native_messaging.whitelist" }
2194     ]
2195   },
2196
2197   "NativeMessagingUserLevelHosts": {
2198     "os": ["win", "linux", "mac"],
2199     "test_policy": { "NativeMessagingUserLevelHosts": false },
2200     "pref_mappings": [
2201       { "pref": "native_messaging.user_level_hosts" }
2202     ]
2203   },
2204
2205   "EnableDeprecatedWebPlatformFeatures": {
2206     "os": ["win", "linux", "mac", "chromeos"],
2207     "test_policy": {
2208       "EnableDeprecatedWebPlatformFeatures": [
2209         "ShowModalDialog_EffectiveUntil20150430"
2210       ]
2211     },
2212     "pref_mappings": [
2213       { "pref": "enable_deprecated_web_platform_features" }
2214     ]
2215   },
2216
2217   "TouchVirtualKeyboardEnabled": {
2218     "os": ["chromeos"],
2219     "test_policy": { "TouchVirtualKeyboardEnabled": false },
2220     "pref_mappings": [
2221       { "pref": "ui.touch_virtual_keyboard_enabled" }
2222     ]
2223   },
2224
2225   "EasyUnlockAllowed": {
2226     "os": ["chromeos"],
2227     "test_policy": { "EasyUnlockAllowed": false },
2228     "pref_mappings": [
2229       { "pref": "easy_unlock.allowed" }
2230     ]
2231   },
2232
2233   "SessionLocales": {
2234     "os": ["chromeos"],
2235     "can_be_recommended": true
2236   },
2237
2238   "----- Chrome OS device policies ---------------------------------------": {},
2239
2240   "DevicePolicyRefreshRate": {
2241     "os": ["chromeos"],
2242     "test_policy": { "DevicePolicyRefreshRate": 300000 },
2243     "pref_mappings": [
2244       { "pref": "policy.device_refresh_rate",
2245         "local_state": true }
2246     ]
2247   },
2248
2249   "ChromeOsReleaseChannel": {
2250   },
2251
2252   "ChromeOsReleaseChannelDelegated": {
2253   },
2254
2255   "DeviceOpenNetworkConfiguration": {
2256   },
2257
2258   "ReportDeviceVersionInfo": {
2259   },
2260
2261   "ReportDeviceActivityTimes": {
2262   },
2263
2264   "ReportDeviceBootMode": {
2265   },
2266
2267   "ReportDeviceNetworkInterfaces": {
2268   },
2269
2270   "ReportDeviceUsers": {
2271   },
2272
2273   "DeviceAllowNewUsers": {
2274   },
2275
2276   "DeviceUserWhitelist": {
2277   },
2278
2279   "DeviceGuestModeEnabled": {
2280   },
2281
2282   "DeviceShowUserNamesOnSignin": {
2283   },
2284
2285   "DeviceDataRoamingEnabled": {
2286   },
2287
2288   "DeviceMetricsReportingEnabled": {
2289     "os": ["chromeos"],
2290     "official_only": true,
2291     "test_policy": { "DeviceMetricsReportingEnabled": true },
2292     "pref_mappings": [
2293       { "pref": "cros.metrics.reportingEnabled",
2294         "indicator_test_setup_js": "Preferences.getInstance().addEventListener('alternate_error_pages.enabled', function(event) { Preferences.prefsChangedCallback(['cros.metrics.reportingEnabled', {value: event.value.value, controlledBy: event.value.controlledBy, disabled: event.value.disabled}]); });",
2295         "indicator_tests": [
2296           { "policy": { "AlternateErrorPagesEnabled": true } }
2297         ]
2298       }
2299     ],
2300
2301     "note": "TODO(bartfab): The |indicator_test_setup_js| above is a hack that makes |cros.metrics.reportingEnabled| track the status of the entirely unrelated |alternate_error_pages.enabled| pref. This is because cros settings cannot currently be made policy-controlled in browser tests. Remove this hack once that restriction is lifted."
2302   },
2303
2304   "DeviceEphemeralUsersEnabled": {
2305   },
2306
2307   "DeviceIdleLogoutTimeout": {
2308   },
2309
2310   "DeviceIdleLogoutWarningDuration": {
2311   },
2312
2313   "DeviceLoginScreenSaverId": {
2314   },
2315
2316   "DeviceLoginScreenSaverTimeout": {
2317   },
2318
2319   "DeviceStartUpUrls": {
2320   },
2321
2322   "DeviceAppPack": {
2323   },
2324
2325   "DeviceAutoUpdateDisabled": {
2326   },
2327
2328   "DeviceAutoUpdateP2PEnabled": {
2329   },
2330
2331   "DeviceTargetVersionPrefix": {
2332   },
2333
2334   "DeviceUpdateScatterFactor": {
2335   },
2336
2337   "DeviceUpdateAllowedConnectionTypes": {
2338   },
2339
2340   "DeviceUpdateHttpDownloadsEnabled": {
2341   },
2342
2343   "ReportDeviceLocation": {
2344   },
2345
2346   "SystemTimezone": {
2347   },
2348
2349   "SystemUse24HourClock": {
2350   },
2351
2352   "DeviceLocalAccounts": {
2353   },
2354
2355   "DeviceLocalAccountAutoLoginId": {
2356   },
2357
2358   "DeviceLocalAccountAutoLoginDelay": {
2359   },
2360
2361   "DeviceLocalAccountAutoLoginBailoutEnabled": {
2362   },
2363
2364   "DeviceLocalAccountPromptForNetworkWhenOffline": {
2365   },
2366
2367   "DeviceBlockDevmode": {
2368   },
2369
2370   "DeviceLoginScreenPowerManagement": {
2371   },
2372
2373   "DeviceAllowRedeemChromeOsRegistrationOffers": {
2374   },
2375
2376   "DeviceStartUpFlags": {
2377   },
2378
2379   "DeviceVariationsRestrictParameter" : {
2380   },
2381
2382   "DeviceLoginScreenDefaultLargeCursorEnabled" : {
2383   },
2384
2385   "DeviceLoginScreenDefaultSpokenFeedbackEnabled" : {
2386   },
2387
2388   "DeviceLoginScreenDefaultHighContrastEnabled" : {
2389   },
2390
2391   "DeviceLoginScreenDefaultScreenMagnifierType" : {
2392   },
2393
2394   "DeviceLoginScreenDefaultVirtualKeyboardEnabled" : {
2395   },
2396
2397   "UptimeLimit": {
2398   },
2399
2400   "RebootAfterUpdate": {
2401   },
2402
2403   "AttestationEnabledForDevice": {
2404   },
2405
2406   "AttestationForContentProtectionEnabled": {
2407   },
2408
2409   "SupervisedUsersEnabled": {
2410   },
2411
2412   "SupervisedUserCreationEnabled": {
2413   },
2414
2415   "AutoCleanUpStrategy": {
2416   },
2417
2418   "DeviceTransferSAMLCookies": {
2419   },
2420
2421   "----- Chrome Frame policies -------------------------------------------": {},
2422
2423   "ChromeFrameRendererSettings": {
2424   },
2425
2426   "RenderInChromeFrameList": {
2427   },
2428
2429   "RenderInHostList": {
2430   },
2431
2432   "ChromeFrameContentTypes": {
2433   },
2434
2435   "GCFUserDataDir": {
2436   },
2437
2438   "AdditionalLaunchParameters": {
2439   },
2440
2441   "SuppressChromeFrameTurndownPrompt": {
2442   },
2443
2444   "SkipMetadataCheck": {
2445   }
2446 }