aboutsummaryrefslogtreecommitdiffstats
path: root/tests/wpt/tests/ai/summarizer/summarizer-summarize-streaming.tentative.https.window.js
diff options
context:
space:
mode:
Diffstat (limited to 'tests/wpt/tests/ai/summarizer/summarizer-summarize-streaming.tentative.https.window.js')
-rw-r--r--tests/wpt/tests/ai/summarizer/summarizer-summarize-streaming.tentative.https.window.js28
1 files changed, 14 insertions, 14 deletions
diff --git a/tests/wpt/tests/ai/summarizer/summarizer-summarize-streaming.tentative.https.window.js b/tests/wpt/tests/ai/summarizer/summarizer-summarize-streaming.tentative.https.window.js
index 59aa01aeb31..8d85dc7b836 100644
--- a/tests/wpt/tests/ai/summarizer/summarizer-summarize-streaming.tentative.https.window.js
+++ b/tests/wpt/tests/ai/summarizer/summarizer-summarize-streaming.tentative.https.window.js
@@ -7,34 +7,34 @@
promise_test(async t => {
const summarizer = await createSummarizer();
- const streamingResponse = summarizer.summarizeStreaming(
- "The web-platform-tests Project is a cross-browser test suite for the Web-platform stack. Writing tests in a way that allows them to be run in all browsers gives browser projects confidence that they are shipping software that is compatible with other implementations, and that later implementations will be compatible with their implementations. This in turn gives Web authors/developers confidence that they can actually rely on the Web platform to deliver on the promise of working across browsers and devices without needing extra layers of abstraction to paper over the gaps left by specification editors and implementors.");
+ const streamingResponse = summarizer.summarizeStreaming(kTestPrompt);
assert_equals(
Object.prototype.toString.call(streamingResponse),
"[object ReadableStream]"
);
- const reader = streamingResponse.getReader();
- let result = "";
- while (true) {
- const { value, done } = await reader.read();
- if (done) {
- break;
- }
- result += value;
+ let result = '';
+ for await (const chunk of streamingResponse) {
+ result += chunk;
}
assert_greater_than(result.length, 0);
-}, 'Summarizer.summarizeStreaming() returns ReadableStream with a non-empty text.');
+}, 'Simple Summarizer.summarizeStreaming() call');
+
+promise_test(async (t) => {
+ const summarizer = await createSummarizer();
+ summarizer.destroy();
+ assert_throws_dom('InvalidStateError', () => summarizer.summarizeStreaming(kTestPrompt));
+}, 'Summarizer.summarizeStreaming() fails after destroyed');
promise_test(async t => {
const summarizer = await createSummarizer();
- const streamingResponse = summarizer.summarizeStreaming("");
+ const streamingResponse = summarizer.summarizeStreaming('');
assert_equals(
Object.prototype.toString.call(streamingResponse),
"[object ReadableStream]"
);
const { result, done } = await streamingResponse.getReader().read();
assert_true(done);
-}, 'Summarizer.summarizeStreaming() returns a ReadableStream without any chunk on an empty input.');
+}, 'Summarizer.summarizeStreaming() returns a ReadableStream without any chunk on an empty input');
promise_test(async () => {
const summarizer = await createSummarizer();
@@ -42,4 +42,4 @@ promise_test(async () => {
summarizer.summarizeStreaming(kTestPrompt),
summarizer.summarizeStreaming(kTestPrompt)
]);
-}, 'Multiple Summarizer.summarizeStreaming() calls are resolved successfully.');
+}, 'Multiple Summarizer.summarizeStreaming() calls are resolved successfully');