Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Warnings
- This test has a WPT meta file that expects 3 subtest issues.
- This WPT test may be referenced by the following Test IDs:
- /ai/writer/writer-availability.tentative.https.window.html - WPT Dashboard Interop Dashboard
// META: title=Writer Availability
// META: script=../resources/util.js
// META: timeout=long
'use strict';
promise_test(async () => {
assert_true(!!Writer);
assert_equals(typeof Writer.availability, 'function');
}, 'Writer.availability() is defined');
promise_test(async () => {
const availability = await Writer.availability();
assert_in_array(availability, kValidAvailabilities);
}, 'Writer.availability() returns a valid value with no options');
promise_test(async () => {
// An array of plausible test option values.
const kCreateOptionsSpec = [
{tone: [undefined, 'formal', 'neutral', 'casual']},
{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 Writer.availability(options);
assert_in_array(availability, kValidAvailabilities, options);
}
}, 'Writer.availability() returns a valid value with plausible options');