Tui Test Renderer

Set up testing utilities for TUI components with ink-testing-library and Bubble Tea testing.

a5c-ai Updated 1.7k repo stars

File contents

TUI Test Renderer

Set up testing utilities for TUI components.

Generated Patterns

Ink Testing

import { render } from 'ink-testing-library';
import React from 'react';
import { MyComponent } from './MyComponent';

test('renders correctly', () => {
  const { lastFrame, stdin } = render(<MyComponent />);
  expect(lastFrame()).toContain('Expected text');
  stdin.write('\r'); // Simulate enter
  expect(lastFrame()).toContain('After enter');
});

Bubble Tea Testing

import (
  tea "github.com/charmbracelet/bubbletea"
  "testing"
)

func TestModel(t *testing.T) {
  m := initialModel()
  m, _ = m.Update(tea.KeyMsg{Type: tea.KeyEnter})
  view := m.View()
  if !strings.Contains(view, "expected") {
    t.Errorf("Expected view to contain 'expected'")
  }
}

Target Processes

  • tui-application-framework
  • cli-unit-integration-testing

a5c-ai/babysitter/tree/main/library/specializations/cli-mcp-development/skills/tui-test-renderer commit 44676fb6ad

Frequently asked questions

npx skillmds@latest add a5c-ai/tui-test-renderer