blob: 14d53889f37d130cb54b4bfc97cc4c1ce7aaa1a5 [file] [log] [blame] [edit]
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<script src="../resources/accessibility-helper.js"></script>
<script src="../resources/js-test.js"></script>
</head>
<body>
<input type="password" id="password-input" value="test">
<input type="text" id="autofill-input" value="foo">
<script>
var output = "This tests that the AX exposed value of secure inputs is the rendered (and therefore censored) text.\n\n";
if (window.accessibilityController) {
window.jsTestIsAsync = true;
const autofillInput = accessibilityController.accessibleElementById("autofill-input");
let lastAutofillValue = autofillInput.stringValue;
output += `Password field value: ${accessibilityController.accessibleElementById("password-input").stringValue}\n`;
output += `#autofill-input value before being obscured: ${lastAutofillValue}\n`;
output += "Making #autofill-input obscured.\n";
window.internals.setAutoFilledAndObscured(document.getElementById("autofill-input"), true);
setTimeout(async function() {
await waitFor(() => lastAutofillValue !== autofillInput.stringValue);
lastAutofillValue = autofillInput.stringValue;
output += `#autofill-input value after being obscured: ${autofillInput.stringValue}\n`;
output += "Making #autofill-input viewable.\n";
window.internals.setAutoFilledAndObscured(document.getElementById("autofill-input"), false);
window.internals.setAutoFilledAndViewable(document.getElementById("autofill-input"), true);
await waitFor(() => lastAutofillValue !== autofillInput.stringValue);
output += `#autofill-input value after being made viewable: ${autofillInput.stringValue}\n`;
debug(output);
finishJSTest();
}, 0);
}
</script>
</body>
</html>