Files
claude-task-master/docs/contributor-docs/testing-roo-integration.md

2.2 KiB

Testing Roo Integration

This document provides instructions for testing the Roo integration in the Task Master package.

Running Tests

To run the tests for the Roo integration:

# Run all tests
npm test

# Run only Roo integration tests
npm test -- -t "Roo"

# Run specific test file
npm test -- tests/integration/roo-files-inclusion.test.js

Manual Testing

To manually verify that the Roo files are properly included in the package:

  1. Create a test directory:

    mkdir test-tm
    cd test-tm
    
  2. Create a package.json file:

    npm init -y
    
  3. Install the task-master-ai package locally:

    # From the root of the claude-task-master repository
    cd ..
    npm pack
    # This will create a file like task-master-ai-0.12.0.tgz
    
    # Move back to the test directory
    cd test-tm
    npm install ../task-master-ai-0.12.0.tgz
    
  4. Initialize a new Task Master project:

    npx task-master init --yes
    
  5. Verify that all Roo files and directories are created:

    # Check that .roomodes file exists
    ls -la | grep .roomodes
    
    # Check that .roo directory exists and contains all mode directories
    ls -la .roo
    ls -la .roo/rules
    ls -la .roo/rules-architect
    ls -la .roo/rules-ask
    ls -la .roo/rules-orchestrator
    ls -la .roo/rules-code
    ls -la .roo/rules-debug
    ls -la .roo/rules-test
    

What to Look For

When running the tests or performing manual verification, ensure that:

  1. The package includes .roo/** and .roomodes in the files array in package.json
  2. The prepare-package.js script verifies the existence of all required Roo files
  3. The init.js script creates all necessary .roo directories and copies .roomodes file
  4. All source files for Roo integration exist in assets/roocode/.roo and assets/roocode/.roomodes

Compatibility

Ensure that the Roo integration works alongside existing Cursor functionality:

  1. Initialize a new project that uses both Cursor and Roo:

    npx task-master init --yes
    
  2. Verify that both .cursor and .roo directories are created

  3. Verify that both .windsurfrules and .roomodes files are created

  4. Confirm that existing functionality continues to work as expected