<!doctype html>
<script type="module">
import {Status, expectOTPRequest} from './otpcredential-helper.js';
// Loading otpcredential-iframe.html in the test will make an OTPCredentials
// call on load, and trigger a postMessage upon completion.
//
// message {
// string result: "Pass" | "Fail"
// string code: credentials.code
// string errorType: error.name
// }
window.onload = async () => {
try {
await expectOTPRequest().andReturn(
() => ({status: Status.SUCCESS, otp: "ABC123"}));
const credentials =
await navigator.credentials.get({otp: {transport: ["sms"]}});
window.parent.postMessage({result: "Pass", code: credentials.code}, '*');
} catch (error) {
window.parent.postMessage({result: "Fail", errorType: error.name}, '*');
}
}
</script>