| <!DOCTYPE html> |
| <meta charset="utf-8"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script> |
| 'use strict'; |
| |
| test(() => { |
| try { |
| new TransformStream({ |
| start(controller) { |
| controller.terminate(); |
| controller.enqueue('a'); |
| } |
| }); |
| assert_unreached('start() should throw'); |
| } catch (e) { |
| assert_equals(e.name, 'TypeError', 'error should be TypeError'); |
| assert_true(e.message.includes( |
| 'Cannot enqueue a chunk into a readable stream that is closed or has ' + |
| 'been requested to be closed'), |
| 'message should contain expected string'); |
| } |
| }, 'exception message for enqueue while closing should be correct'); |
| |
| test(() => { |
| try { |
| new TransformStream({ |
| start(controller) { |
| controller.error(); |
| controller.enqueue('a'); |
| } |
| }); |
| assert_unreached('start() should throw'); |
| } catch (e) { |
| assert_equals(e.name, 'TypeError', 'error should be TypeError'); |
| assert_true(e.message.includes( |
| 'Cannot enqueue a chunk into an errored readable stream'), |
| 'message should contain expected string'); |
| } |
| }, 'exception message for enqueue when errored should be correct'); |
| </script> |