Files
hyperterm/tests/README.md
2025-11-03 15:52:28 -05:00

1.7 KiB

HyperTerm Tests

Test suite for HyperTerm prompt functionality and performance.

Test Files

test_prompt.sh

Comprehensive test suite with full functionality testing.

Features:

  • Individual function testing
  • Performance benchmarking
  • Git state testing
  • Interactive test mode

Usage:

cd tests
bash test_prompt.sh

quick_test.sh

Fast validation test for immediate feedback.

Features:

  • Quick function validation
  • Basic performance check
  • Works in current directory or creates temp repo

Usage:

cd tests
bash quick_test.sh

Test Environment

Tests create isolated environments to avoid affecting your working directory:

  • Temporary git repositories in /tmp/
  • Various git states (clean, dirty, staged, untracked)
  • Automatic cleanup on exit

Performance Testing

Both test scripts include performance measurements:

  • Multiple iterations for accurate timing
  • Average execution time per prompt call
  • Performance classification (Excellent < 10ms, Good < 50ms)

Git States Tested

  • Clean repository
  • Modified files
  • Untracked files
  • Staged files
  • Mixed states
  • Ahead/behind tracking

Requirements

  • Git installed and available in PATH
  • Bash 4.0 or later
  • HyperTerm core files in ../hyperterm/core/

Logging

All tests use structured logging:

  • [INFO] - General information
  • [SUCCESS] - Successful operations
  • [WARN] - Warnings
  • [ERROR] - Errors

Interactive Mode

The full test suite includes an interactive mode with commands:

  • status - Show git status
  • prompt - Show full prompt
  • perf - Run performance test
  • states - Test different git states
  • modify - Create test modifications
  • clean - Clean working directory
  • exit - Exit interactive mode