Use when writing or modifying tests for Ink (terminal UI) components.
Scanned 9/10/2026
Install to Claude Code
npx -y skills add LandonSchropp/agent-toolkit --skill testing-ink --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Testing Ink?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/landonschropp-testing-ink)More formats (shields.io, HTML) on the badges page.
---
name: testing-ink
description: Use when writing or modifying tests for Ink (terminal UI) components.
---
# Testing Ink Components
Use `render` from `ink-testing-library`, not `@testing-library/react`. Ink has its own renderer, so the DOM library can't reach it.
```tsx
import { render } from "ink-testing-library";
const { lastFrame, frames, rerender } = render(<MyComponent />);
expect(lastFrame()).toContain("expected text");
```
- `lastFrame()`: the most recent rendered terminal frame as a string.
- `frames`: the full array of frames in render order.
- `rerender(<MyComponent prop={next} />)`: re-render with new props.
## Testing hooks in a Bun project
Bun has no DOM, so testing a hook (via `ls-typescript:testing-react`) needs DOM globals registered. Call `@happy-dom/global-registrator` before any `@testing-library/react` import, so the DOM is present when React DOM loads.
```tsx
import { GlobalRegistrator } from "@happy-dom/global-registrator";
GlobalRegistrator.register();
import { renderHook } from "@testing-library/react";
```
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!
Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman. Also auto-triggers when token efficiency is requested.