managed-config-success.https.window.js (2275B)
1 // META: script=/resources/test-only-api.js 2 // META: script=resources/managed-configuration-helper.js 3 4 'use strict' 5 6 managed_config_test(async (test, managedConfigTest) => { 7 promise_rejects_dom( 8 test, 'NotAllowedError', 9 navigator.managed.getManagedConfiguration(['a'])); 10 }, 'App is not managed.'); 11 12 managed_config_test(async (test, managedConfigTest) => { 13 managedConfigTest.setManagedConfig({a: 2}); 14 const result = await navigator.managed.getManagedConfiguration(['a']); 15 assert_equals(Object.keys(result).length, 1); 16 assert_equals(result.a, 2); 17 }, 'Configuration is returned'); 18 19 managed_config_test(async (test, managedConfigTest) => { 20 managedConfigTest.setManagedConfig({a: 2, b: 3, c: 1}); 21 const result = await navigator.managed.getManagedConfiguration(['b', 'c']); 22 assert_equals(Object.keys(result).length, 2); 23 assert_equals(result.b, 3); 24 assert_equals(result.c, 1); 25 }, 'Selected keys are returned.'); 26 27 managed_config_test(async (test, managedConfigTest) => { 28 managedConfigTest.setManagedConfig({a: 2, b: 3, c: 1}); 29 const result = await navigator.managed.getManagedConfiguration(['b', 'e']); 30 assert_equals(Object.keys(result).length, 1); 31 assert_equals(result.b, 3); 32 }, 'Only existing keys are returned.'); 33 34 managed_config_test(async (test, managedConfigTest) => { 35 managedConfigTest.setManagedConfig({a: 2, b: false, c: {x: 3}}); 36 const result = 37 await navigator.managed.getManagedConfiguration(['a', 'b', 'c']); 38 assert_equals(Object.keys(result).length, 3); 39 assert_equals(result.a, 2); 40 assert_equals(result.b, false); 41 assert_equals(Object.keys(result.c).length, 1); 42 assert_equals(result.c.x, 3); 43 }, 'Values can be of any type'); 44 45 managed_config_test(async (test, managedConfigTest) => { 46 const nextObserverAdded = managedConfigTest.nextObserverAdded(); 47 const watcher = 48 new EventWatcher(test, navigator.managed, ['managedconfigurationchange']); 49 await nextObserverAdded; 50 const event = watcher.wait_for(['managedconfigurationchange']); 51 managedConfigTest.setManagedConfig({'a': 2}); 52 await event; 53 const result = await navigator.managed.getManagedConfiguration(['a']); 54 assert_equals(Object.keys(result).length, 1); 55 assert_equals(result.a, 2); 56 }, 'A change in managed configuration is observed.');