diff options
Diffstat (limited to 'toolkit/components/search/tests/xpcshell/test_engine_selector_environment.js')
-rw-r--r-- | toolkit/components/search/tests/xpcshell/test_engine_selector_environment.js | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/toolkit/components/search/tests/xpcshell/test_engine_selector_environment.js b/toolkit/components/search/tests/xpcshell/test_engine_selector_environment.js index bf56984cde..401392b955 100644 --- a/toolkit/components/search/tests/xpcshell/test_engine_selector_environment.js +++ b/toolkit/components/search/tests/xpcshell/test_engine_selector_environment.js @@ -388,6 +388,55 @@ const CONFIG_VERSIONS = [ }, ]; +const CONFIG_DEVICE_TYPE_LAYOUT = [ + { + recordType: "engine", + identifier: "engine-no-device-type", + base: {}, + variants: [ + { + environment: { + allRegionsAndLocales: true, + }, + }, + ], + }, + { + recordType: "engine", + identifier: "engine-single-device-type", + base: {}, + variants: [ + { + environment: { + allRegionsAndLocales: true, + deviceType: ["tablet"], + }, + }, + ], + }, + { + recordType: "engine", + identifier: "engine-multiple-device-type", + base: {}, + variants: [ + { + environment: { + allRegionsAndLocales: true, + deviceType: ["tablet", "smartphone"], + }, + }, + ], + }, + { + recordType: "defaultEngines", + specificDefaults: [], + }, + { + recordType: "engineOrders", + orders: [], + }, +]; + const engineSelector = new SearchEngineSelector(); let settings; let settingOverrides; @@ -793,3 +842,15 @@ add_task(async function test_engine_selector_does_not_match_optional_engines() { "Should match engines where optional flag is false or undefined" ); }); + +add_task(async function test_engine_selector_match_device_type() { + await assertActualEnginesEqualsExpected( + CONFIG_DEVICE_TYPE_LAYOUT, + { + locale: "en-CA", + region: "CA", + }, + ["engine-no-device-type"], + "Should only match engines with no device type." + ); +}); |