mirror of
https://github.com/servo/servo.git
synced 2025-10-15 16:00:28 +01:00
63 lines
2.1 KiB
HTML
63 lines
2.1 KiB
HTML
<!DOCTYPE html>
|
|
<meta charset="utf-8">
|
|
<title>WebAuthn navigator.credentials.get() extensions Tests</title>
|
|
<meta name="timeout" content="long">
|
|
<link rel="author" title="Adam Powers" href="mailto:adam@fidoalliance.org">
|
|
<link rel="help" href="https://w3c.github.io/webauthn/#iface-credential">
|
|
<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>
|
|
standardSetup(function() {
|
|
"use strict";
|
|
|
|
var credPromise = createCredential();
|
|
var dummyExtension = {
|
|
foo: true,
|
|
bar: "yup"
|
|
};
|
|
var badExtId = {};
|
|
badExtId[createRandomString(65)] = dummyExtension;
|
|
|
|
// bad extension values
|
|
new GetCredentialsTest("options.publicKey.extensions", "hi mom")
|
|
.addCredential(credPromise)
|
|
.runTest("Bad extensions: extensions is string", TypeError);
|
|
|
|
// empty extensions
|
|
new GetCredentialsTest("options.publicKey.extensions", null)
|
|
.addCredential(credPromise)
|
|
.runTest("extensions is null");
|
|
new GetCredentialsTest("options.publicKey.extensions", [])
|
|
.addCredential(credPromise)
|
|
.runTest("extensions is empty Array");
|
|
new GetCredentialsTest("options.publicKey.extensions", new ArrayBuffer(0))
|
|
.addCredential(credPromise)
|
|
.runTest("extensions is empty ArrayBuffer");
|
|
|
|
// unknown extensions should be ignored
|
|
new GetCredentialsTest("options.publicKey.extensions", {foo: dummyExtension})
|
|
.addCredential(credPromise)
|
|
.runTest("ignored extension");
|
|
new GetCredentialsTest("options.publicKey.extensions", {badExtId: dummyExtension})
|
|
.addCredential(credPromise)
|
|
.runTest("extension ID too long");
|
|
|
|
// TODO
|
|
// defined extensions:
|
|
// * appid
|
|
// * txAuthSimple
|
|
// * txAuthGeneric
|
|
// * authnSel
|
|
// * exts
|
|
// * uvi
|
|
// * loc
|
|
// * uvm
|
|
});
|
|
|
|
/* JSHINT */
|
|
/* globals standardSetup, GetCredentialsTest, createRandomString, createCredential */
|
|
</script>
|