зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1564730 [wpt PR 17417] - Split out the manual parts of webauthn idlharness test, a=testonly
Automatic update from web-platform-tests Split out the manual parts of webauthn idlharness test (#17417) * Remove manual parts of webauthn idlharness test * Remove duplicated object * Remove WebAuthentication interface * Reinstate deleted challengeBytes * Remove unneeded conditional -- wpt-commits: cd18d4954c5184ecfb7a210aa939081c5e2552e8 wpt-pr: 17417
This commit is contained in:
Родитель
d3e9e92348
Коммит
b34c280dc5
|
@ -0,0 +1,53 @@
|
|||
// META: timeout=long
|
||||
// META: script=/resources/WebIDLParser.js
|
||||
// META: script=/resources/idlharness.js
|
||||
// META: script=helpers.js
|
||||
|
||||
// https://w3c.github.io/webauthn/
|
||||
|
||||
'use strict';
|
||||
|
||||
idl_test(
|
||||
['webauthn'],
|
||||
['credential-management'],
|
||||
async idlArray => {
|
||||
idlArray.add_untested_idls("[Exposed=(Window,Worker)] interface ArrayBuffer {};");
|
||||
|
||||
idlArray.add_objects({
|
||||
PublicKeyCredential: ['cred', 'assertion'],
|
||||
AuthenticatorAttestationResponse: ['cred.response'],
|
||||
AuthenticatorAssertionResponse: ['assertion.response']
|
||||
});
|
||||
|
||||
const challengeBytes = new Uint8Array(16);
|
||||
window.crypto.getRandomValues(challengeBytes);
|
||||
|
||||
self.cred = await Promise.race([
|
||||
new Promise((_, reject) => window.setTimeout(() => {
|
||||
reject('Timed out waiting for user to touch security key')
|
||||
}, 3000)),
|
||||
createCredential({
|
||||
options: {
|
||||
publicKey: {
|
||||
timeout: 3000,
|
||||
user: {
|
||||
id: new Uint8Array(16),
|
||||
},
|
||||
}
|
||||
}
|
||||
}),
|
||||
]);
|
||||
|
||||
self.assertion = await navigator.credentials.get({
|
||||
publicKey: {
|
||||
timeout: 3000,
|
||||
allowCredentials: [{
|
||||
id: cred.rawId,
|
||||
transports: ["usb", "nfc", "ble"],
|
||||
type: "public-key"
|
||||
}],
|
||||
challenge: challengeBytes,
|
||||
}
|
||||
});
|
||||
}
|
||||
);
|
|
@ -11,38 +11,11 @@ idl_test(
|
|||
['webauthn'],
|
||||
['credential-management'],
|
||||
async idlArray => {
|
||||
idlArray.add_untested_idls("[Exposed=(Window,Worker)] interface ArrayBuffer {};");
|
||||
idlArray.add_objects({
|
||||
WebAuthentication: ['navigator.authentication'],
|
||||
PublicKeyCredential: ['cred', 'assertion'],
|
||||
AuthenticatorAttestationResponse: ['cred.response'],
|
||||
AuthenticatorAssertionResponse: ['assertion.response']
|
||||
});
|
||||
|
||||
const challengeBytes = new Uint8Array(16);
|
||||
window.crypto.getRandomValues(challengeBytes);
|
||||
|
||||
self.cred = await createCredential({
|
||||
options: {
|
||||
publicKey: {
|
||||
timeout: 3000,
|
||||
user: {
|
||||
id: new Uint8Array(16),
|
||||
},
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
self.assertion = await navigator.credentials.get({
|
||||
publicKey: {
|
||||
timeout: 3000,
|
||||
allowCredentials: [{
|
||||
id: cred.rawId,
|
||||
transports: ["usb", "nfc", "ble"],
|
||||
type: "public-key"
|
||||
}],
|
||||
challenge: challengeBytes,
|
||||
}
|
||||
});
|
||||
// NOTE: The following are tested in idlharness-manual.https.window.js:
|
||||
// idlArray.add_objects({
|
||||
// PublicKeyCredential: ['cred', 'assertion'],
|
||||
// AuthenticatorAttestationResponse: ['cred.response'],
|
||||
// AuthenticatorAssertionResponse: ['assertion.response']
|
||||
// });
|
||||
}
|
||||
);
|
||||
|
|
Загрузка…
Ссылка в новой задаче