aboutsummaryrefslogtreecommitdiffstats
path: root/tests/wpt/tests/ai/summarizer/summarizer-availability.tentative.https.window.js
diff options
context:
space:
mode:
Diffstat (limited to 'tests/wpt/tests/ai/summarizer/summarizer-availability.tentative.https.window.js')
-rw-r--r--tests/wpt/tests/ai/summarizer/summarizer-availability.tentative.https.window.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/wpt/tests/ai/summarizer/summarizer-availability.tentative.https.window.js b/tests/wpt/tests/ai/summarizer/summarizer-availability.tentative.https.window.js
new file mode 100644
index 00000000000..8691765f693
--- /dev/null
+++ b/tests/wpt/tests/ai/summarizer/summarizer-availability.tentative.https.window.js
@@ -0,0 +1,31 @@
+// META: title=Summarizer Availability
+// 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, 'tl;dr', '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');