All files / __tests__ test-helper.js

100% Statements 14/14
100% Branches 0/0
100% Functions 6/6
100% Lines 14/14

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64  2x 2x 2x       109x 109x         27x                   27x           27x       15x           15x           15x       3x           3x           3x    
export function resizeWindow(x, y) {
  window.innerWidth = x;
  window.innerHeight = y;
  window.dispatchEvent(new Event('resize'));
}
 
export function delay(duration) {
  return new Promise((resolve) => {
    setTimeout(resolve, duration);
  });
}
 
export function sendTouchEvent(x, y, element, eventType) {
  const touchObj = {
    identifier: Date.now(),
    target: element,
    radiusX: 2.5,
    radiusY: 2.5,
    rotationAngle: 10,
    force: 0.5,
    clientX: x,
    clientY: y
  };
  const touchEvent = new TouchEvent(eventType, {
    cancelable: true,
    bubbles: true,
    targetTouches: [touchObj],
    shiftKey: true,
  });
  element.dispatchEvent(touchEvent);
}
 
export function sendWheelEvent(x, y, element, eventType) {
  const touchObj = {
    identifier: Date.now(),
    target: element,
    deltaX: x,
    deltaY: y
  };
  const touchEvent = new WheelEvent(eventType, {
    cancelable: true,
    bubbles: true,
    ...touchObj,
    shiftKey: true,
  });
  element.dispatchEvent(touchEvent);
}
 
export function sendMouseEvent(x, y, element, eventType) {
  const touchObj = {
    identifier: Date.now(),
    target: element,
    clientX: x,
    clientY: y
  };
  const touchEvent = new MouseEvent(eventType, {
    cancelable: true,
    bubbles: true,
    ...touchObj,
    shiftKey: true,
  });
  element.dispatchEvent(touchEvent);
}