Prompt.js 1.5 KB

123456789101112131415161718192021222324252627282930313233
  1. 'use strict';
  2. require('../common');
  3. const fc = require('fast-check');
  4. describe('Prompt', function () {
  5. describe('requestPassword & getPassword', function () {
  6. this.timeout(30000);
  7. it('returns the password fed into the dialog', () => {
  8. fc.assert(fc.property(
  9. fc.string(),
  10. function (password) {
  11. password = password.replace(/\r+|\n+/g, '');
  12. const clean = globalThis.cleanup('', {url: 'ftp://example.com/?0000000000000000'});
  13. document.body.innerHTML = (
  14. '<div id="passwordmodal" class="modal fade" role="dialog">' +
  15. '<div class="modal-dialog"><div class="modal-content">' +
  16. '<div class="modal-body"><form id="passwordform" role="form">' +
  17. '<div class="form-group"><input id="passworddecrypt" ' +
  18. 'type="password" class="form-control" placeholder="Enter ' +
  19. 'password"></div><button type="submit">Decrypt</button>' +
  20. '</form></div></div></div></div>'
  21. );
  22. const passwordInput = document.getElementById('passworddecrypt');
  23. passwordInput.value = password;
  24. const result = passwordInput.value;
  25. clean();
  26. return result === password;
  27. }
  28. ));
  29. });
  30. });
  31. });