| <!DOCTYPE html> | |
| <meta charset="utf-8"> | |
| <meta name="timeout" content="long"> | |
| <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 src=helpers.js></script> | |
| <body></body> | |
| <script> | |
| "use strict"; | |
| // usb transport | |
| virtualAuthenticatorPromiseTest(async function() { | |
| const credential = await createCredential({ | |
| options: { | |
| publicKey: { | |
| authenticatorSelection: { | |
| userVerification: "preferred" | |
| }, | |
| }, | |
| }, | |
| }); | |
| assert_equals(credential.authenticatorAttachment, "cross-platform"); | |
| }, { | |
| protocol: "ctap2", | |
| transport: "usb" | |
| }, "navigator.credentials.create() with usb authenticator, attachment as cross-platform"); | |
| // ble transport | |
| virtualAuthenticatorPromiseTest(async function() { | |
| const credential = await createCredential({ | |
| options: { | |
| publicKey: { | |
| authenticatorSelection: { | |
| userVerification: "preferred" | |
| }, | |
| }, | |
| }, | |
| }); | |
| assert_equals(credential.authenticatorAttachment, "cross-platform"); | |
| }, { | |
| protocol: "ctap2", | |
| transport: "ble" | |
| }, "navigator.credentials.create() with ble authenticator, attachment as cross-platform"); | |
| // nfc transport | |
| virtualAuthenticatorPromiseTest(async function() { | |
| const credential = await createCredential({ | |
| options: { | |
| publicKey: { | |
| authenticatorSelection: { | |
| userVerification: "preferred" | |
| }, | |
| }, | |
| }, | |
| }); | |
| assert_equals(credential.authenticatorAttachment, "cross-platform"); | |
| }, { | |
| protocol: "ctap2", | |
| transport: "nfc" | |
| }, "navigator.credentials.create() with nfc authenticator, attachment as cross-platform"); | |
| // internal transport | |
| virtualAuthenticatorPromiseTest(async function() { | |
| const credential = await createCredential({ | |
| options: { | |
| publicKey: { | |
| authenticatorSelection: { | |
| userVerification: "preferred" | |
| }, | |
| }, | |
| }, | |
| }); | |
| assert_equals(credential.authenticatorAttachment, "platform"); | |
| }, { | |
| protocol: "ctap2", | |
| transport: "internal" | |
| }, "navigator.credentials.create() with internal authenticator, attachment as platform"); | |
| </script> |