blob: 8337882bd0b8d7c17f47b0acf03d5451ddc49222 [file] [log] [blame]
<!DOCTYPE html>
<script src=../resources/testharness.js></script>
<script src=../resources/testharnessreport.js></script>
<script src=../resources/WebIDLParser.js></script>
<script src=../resources/idlharness.js></script>
<script type="text/plain" id="tested">
[SecureContext]
interface ScopedCredentialInfo {
readonly attribute ArrayBuffer clientData;
readonly attribute ArrayBuffer attestation;
};
dictionary RelyingPartyAccount {
required DOMString rpDisplayName;
required DOMString displayName;
required DOMString id;
DOMString name;
DOMString imageURL;
};
dictionary ScopedCredentialParameters {
required ScopedCredentialType type;
required AlgorithmIdentifier algorithm;
};
dictionary ScopedCredentialOptions {
unsigned long timeoutSeconds;
USVString rpId;
sequence < ScopedCredentialDescriptor > excludeList;
AuthenticationExtension extensions;
};
[SecureContext]
interface AuthenticationAssertion {
readonly attribute ScopedCredential credential;
readonly attribute ArrayBuffer clientData;
readonly attribute ArrayBuffer authenticatorData;
readonly attribute ArrayBuffer signature;
};
dictionary AssertionOptions {
unsigned long timeoutSeconds;
USVString rpId;
sequence < ScopedCredentialDescriptor > allowList;
AuthenticationExtension extensions;
};
dictionary AuthenticationExtension {
};
dictionary AuthenticationClientData {
required DOMString challenge;
required DOMString origin;
required AlgorithmIdentifier hashAlg;
DOMString tokenBinding;
AuthenticationExtension extensions;
};
enum ScopedCredentialType {
"ScopedCred"
};
[SecureContext]
interface ScopedCredential {
readonly attribute ScopedCredentialType type;
readonly attribute ArrayBuffer id;
};
dictionary ScopedCredentialDescriptor {
required ScopedCredentialType type;
required BufferSource id;
sequence <Transport> transports;
};
enum Transport {
"usb",
"nfc",
"ble"
};
[SecureContext]
interface WebAuthentication {
Promise <ScopedCredentialInfo> makeCredential (
Account accountInformation,
sequence < ScopedCredentialParameters > cryptoParameters,
BufferSource attestationChallenge,
optional ScopedCredentialOptions options
);
Promise <AuthenticationAssertion> getAssertion (
BufferSource assertionChallenge,
optional AssertionOptions options
);
};
</script>
<script>
(function() {
"use strict";
var idl_array = new IdlArray();
idl_array.add_idls(document.querySelector('#tested').textContent);
idl_array.add_objects({
WebAuthentication: ['navigator.authentication']
});
idl_array.test();
})();
</script>