@renderlesskit/react
Version:
Collection of headless components/hooks that are accessible, composable, customizable from low level to build your own UI & Design System powered by Reakit
82 lines (71 loc) • 1.87 kB
JavaScript
export var isEndSelection = element => {
expect(element.parentElement).toHaveAttribute("data-is-selection-end");
};
export var isStartSelection = element => {
expect(element.parentElement).toHaveAttribute("data-is-selection-start");
};
export var isInSelectionRange = element => {
expect(element.parentElement).toHaveAttribute("data-is-range-selection");
};
export var repeat = (cb, times) => {
for (var i = 0; i < times; i++) {
cb();
}
};
/**
* Enables reading pageX/pageY from fireEvent.mouse*(..., {pageX: ..., pageY: ...}).
*/
export function installMouseEvent() {
beforeAll(() => {
var oldMouseEvent = MouseEvent; // @ts-ignore
// prettier-ignore
global.MouseEvent = class FakeMouseEvent extends MouseEvent {
constructor(name, init) {
super(name, init);
this._init = void 0;
this._init = init;
}
get pageX() {
return this._init.pageX;
}
get pageY() {
return this._init.pageY;
}
}; // @ts-ignore
global.MouseEvent.oldMouseEvent = oldMouseEvent;
});
afterAll(() => {
// @ts-ignore
global.MouseEvent = global.MouseEvent.oldMouseEvent;
});
}
export function installPointerEvent() {
beforeAll(() => {
// @ts-ignore
// prettier-ignore
global.PointerEvent = class FakePointerEvent extends MouseEvent {
constructor(name, init) {
super(name, init);
this._init = void 0;
this._init = init;
}
get pointerType() {
return this._init.pointerType;
}
get pointerId() {
return this._init.pointerId;
}
get pageX() {
return this._init.pageX;
}
get pageY() {
return this._init.pageY;
}
};
});
afterAll(() => {
// @ts-ignore
delete global.PointerEvent;
});
}
//# sourceMappingURL=test-utils.js.map