| // META: title=Summarizer Availability |
| // META: script=/resources/testdriver.js |
| // META: script=../resources/util.js |
| // META: timeout=long |
| |
| 'use strict'; |
| |
| promise_test(async () => { |
| assert_true(!!Summarizer); |
| assert_equals(typeof Summarizer.availability, 'function'); |
| }, 'Summarizer.availability() is defined'); |
| |
| promise_test(async () => { |
| const availability = await Summarizer.availability(); |
| assert_in_array(availability, kValidAvailabilities); |
| }, 'Summarizer.availability() returns a valid value with no options'); |
| |
| promise_test(async () => { |
| // An array of plausible test option values. |
| const kCreateOptionsSpec = [ |
| {type: [undefined, 'tldr', 'teaser', 'key-points', 'headline']}, |
| {format: [undefined, 'plain-text', 'markdown']}, |
| {length: [undefined, 'short', 'medium', 'long']}, |
| {expectedInputLanguages: [[], ['en'], ['es'], ['jp', 'fr']]}, |
| {expectedContextLanguages: [[], ['en'], ['es'], ['jp', 'fr']]}, |
| {outputLanguage: [undefined, 'en', 'es', 'jp', 'fr']} |
| ]; |
| for (const options of generateOptionCombinations(kCreateOptionsSpec)) { |
| const availability = await Summarizer.availability(options); |
| assert_in_array(availability, kValidAvailabilities, options); |
| } |
| }, 'Summarizer.availability() returns a valid value with plausible options'); |