@multiplatform.one/test-utils
v7.4.1
Published
Shared testing utilities for multiplatform.one packages
Readme
@multiplatform.one/test-utils
Shared testing utilities for multiplatform.one packages and apps: provider-aware rendering for Tamagui/React Native Web components, DOM query helpers, and mocks for Frappe and Keycloak.
Install
pnpm add -D @multiplatform.one/test-utilsPeers: react, react-dom, vitest (pairs with @testing-library/react).
What it owns
renderWithProviders(ui, options?)— renders insideTamaguiProvider+QueryClientProvider(both on by default), optional theme / Frappe / Keycloak wrappers; returns an enhanced result with RNW-aware queries (getInput,getButton,getCheckbox,getSelect,getSlider,getSwitch,getLabel,getError, …)TestProviders,createFixture,findTextInContainer/mocks—createMockFrappeApp,mockDocList,mockGetDoc,mockCreateDoc,mockUpdateDoc,mockDeleteDoc,createMockKeycloakContext/setup— vitest setup entry (jsdom shims) forsetupFiles
What it must not do
- Never imported by production code — dev dependency only
Usage
import { renderWithProviders } from "@multiplatform.one/test-utils";
test("renders the user card", () => {
const { getByText, getButton } = renderWithProviders(<UserCard name="Ada" />);
expect(getByText("Ada")).toBeInTheDocument();
expect(getButton("Save")).toBeDefined();
});// vitest.config.ts
export default defineConfig({
test: { setupFiles: ["@multiplatform.one/test-utils/setup"] },
});License
Apache-2.0
