directApi.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. 'use strict';
  2. var setup = require('./setup.js');
  3. function clear(element) {
  4. return setup.setupDirect().api.clear(element);
  5. }
  6. function click(element, options = {}) {
  7. return setup.setupDirect(options, element).api.click(element);
  8. }
  9. function copy(options = {}) {
  10. return setup.setupDirect(options).api.copy();
  11. }
  12. function cut(options = {}) {
  13. return setup.setupDirect(options).api.cut();
  14. }
  15. function dblClick(element, options = {}) {
  16. return setup.setupDirect(options).api.dblClick(element);
  17. }
  18. function deselectOptions(select, values, options = {}) {
  19. return setup.setupDirect(options).api.deselectOptions(select, values);
  20. }
  21. function hover(element, options = {}) {
  22. return setup.setupDirect(options).api.hover(element);
  23. }
  24. async function keyboard(text, options = {}) {
  25. const { api, system } = setup.setupDirect(options);
  26. return api.keyboard(text).then(()=>system);
  27. }
  28. async function pointer(input, options = {}) {
  29. const { api, system } = setup.setupDirect(options);
  30. return api.pointer(input).then(()=>system);
  31. }
  32. function paste(clipboardData, options) {
  33. return setup.setupDirect(options).api.paste(clipboardData);
  34. }
  35. function selectOptions(select, values, options = {}) {
  36. return setup.setupDirect(options).api.selectOptions(select, values);
  37. }
  38. function tripleClick(element, options = {}) {
  39. return setup.setupDirect(options).api.tripleClick(element);
  40. }
  41. function type(element, text, options = {}) {
  42. return setup.setupDirect(options, element).api.type(element, text, options);
  43. }
  44. function unhover(element, options = {}) {
  45. const { api, system } = setup.setupDirect(options);
  46. system.pointer.setMousePosition({
  47. target: element
  48. });
  49. return api.unhover(element);
  50. }
  51. function upload(element, fileOrFiles, options = {}) {
  52. return setup.setupDirect(options).api.upload(element, fileOrFiles);
  53. }
  54. function tab(options = {}) {
  55. return setup.setupDirect().api.tab(options);
  56. }
  57. exports.clear = clear;
  58. exports.click = click;
  59. exports.copy = copy;
  60. exports.cut = cut;
  61. exports.dblClick = dblClick;
  62. exports.deselectOptions = deselectOptions;
  63. exports.hover = hover;
  64. exports.keyboard = keyboard;
  65. exports.paste = paste;
  66. exports.pointer = pointer;
  67. exports.selectOptions = selectOptions;
  68. exports.tab = tab;
  69. exports.tripleClick = tripleClick;
  70. exports.type = type;
  71. exports.unhover = unhover;
  72. exports.upload = upload;