@ttoss/test-utils
Version:
This package provides a number of utilities and re-exports for testing using Jest, React Testing Library, and Relay.
112 lines (108 loc) • 3.86 kB
JavaScript
/** Powered by @ttoss/config. https://ttoss.dev/docs/modules/packages/config/ */
;
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __name = (target, value) => __defProp(target, "name", {
value,
configurable: true
});
var __export = (target, all) => {
for (var name in all) __defProp(target, name, {
get: all[name],
enumerable: true
});
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
get: () => from[key],
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
});
}
return to;
};
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
// If the importer is in node compatibility mode or this is not an ESM
// file that has been converted to a CommonJS file using a Babel-
// compatible transform (i.e. "__esModule" has not been set), then set
// "default" to the CommonJS "module.exports" for node compatibility.
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
value: mod,
enumerable: true
}) : target, mod));
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
value: true
}), mod);
// src/react.ts
var react_exports = {};
__export(react_exports, {
render: () => customRender,
renderHook: () => customRenderHook,
setOptions: () => setOptions,
userEvent: () => import_user_event.default
});
module.exports = __toCommonJS(react_exports);
// src/assignWindowProperties.ts
(() => {
if (typeof window === "undefined") {
return;
}
if (!window?.matchMedia) {
Object.defineProperty(window, "matchMedia", {
writable: true,
value: jest.fn().mockImplementation(query => {
return {
matches: true,
media: query,
onchange: null,
addListener: jest.fn(),
removeListener: jest.fn(),
addEventListener: jest.fn(),
removeEventListener: jest.fn(),
dispatchEvent: jest.fn()
};
})
});
}
})();
// src/react.ts
var import_jest_dom = require("@testing-library/jest-dom");
var import_jest = require("@emotion/jest");
var import_react = require("@testing-library/react");
var import_resize_observer_polyfill = __toESM(require("resize-observer-polyfill"));
__reExport(react_exports, require("@emotion/jest"), module.exports);
var import_user_event = __toESM(require("@testing-library/user-event"));
__reExport(react_exports, require("@testing-library/react"), module.exports);
global.ResizeObserver = import_resize_observer_polyfill.default;
expect.extend(import_jest.matchers);
expect.addSnapshotSerializer((0, import_jest.createSerializer)());
var options_ = {};
var setOptions = /* @__PURE__ */__name(options => {
options_ = options;
}, "setOptions");
var customRender = /* @__PURE__ */__name((ui, options) => {
return (0, import_react.render)(ui, {
...options_,
...options
});
}, "customRender");
var customRenderHook = /* @__PURE__ */__name((callback, options) => {
return (0, import_react.renderHook)(callback, {
...options_,
...options
});
}, "customRenderHook");
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
render,
renderHook,
setOptions,
userEvent,
...require("@emotion/jest"),
...require("@testing-library/react")
});