| <!DOCTYPE html> | |
| <title>Federated Credential Management API network request tests.</title> | |
| <meta name="pac" content="/fedcm/support/proxy.sub.pac"> | |
| <link rel="help" href="https://fedidcg.github.io/FedCM"> | |
| <script src="/resources/testharness.js"></script> | |
| <script src="/resources/testharnessreport.js"></script> | |
| <script src="/resources/testdriver.js"></script> | |
| <script src="/resources/testdriver-vendor.js"></script> | |
| <script type="module"> | |
| import {request_options_with_mediation_required, | |
| alt_request_options_with_mediation_required, | |
| fedcm_test, | |
| fedcm_get_and_select_first_account} from './support/fedcm-helper.sub.js'; | |
| fedcm_test(async t => { | |
| const first = fedcm_get_and_select_first_account(t, request_options_with_mediation_required()); | |
| const second = navigator.credentials.get(alt_request_options_with_mediation_required()); | |
| // We have to call promise_rejects_dom here, because if we call it after | |
| // the promise gets rejected, the unhandled rejection event handler is called | |
| // and fails the test even if we handle the rejection later. | |
| const rej = promise_rejects_dom(t, 'NotAllowedError', second); | |
| const first_cred = await first; | |
| assert_equals(first_cred.token, "token"); | |
| return rej; | |
| }, "When there's a pending request, a second `get` call should be rejected."); | |
| </script> |