|  | <!DOCTYPE html> | 
|  | <html> | 
|  | <title>View transitions: Transition has implementation-defined timeout.</title> | 
|  | <link rel="author" title="Tim Nguyen" href="https://github.com/nt1m"> | 
|  | <link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/"> | 
|  | <meta name="timeout" content="long"> | 
|  | <script src="/resources/testharness.js"></script> | 
|  | <script src="/resources/testharnessreport.js"></script> | 
|  | <script> | 
|  | promise_test(async t => { | 
|  | assert_implements(document.startViewTransition, "Missing document.startViewTransition"); | 
|  | const transition = document.startViewTransition(() => { | 
|  | return new Promise(() => {}); | 
|  | }); | 
|  | transition.updateCallbackDone.then(() => { | 
|  | assert_unreached(); | 
|  | }); | 
|  | transition.finished.then(() => { | 
|  | assert_unreached(); | 
|  | }); | 
|  | await promise_rejects_dom(t, "TimeoutError", transition.ready); | 
|  | }, "View transition should have an implementation-defined timeout on the update callback"); | 
|  | </script> | 
|  | </body> | 
|  | </html> |