mix raxol.mutation (Raxol v2.0.1)

View Source

Custom mutation testing for Raxol using simplified approach.

This task provides basic mutation testing capabilities when full mutation testing tools have compatibility issues.

Usage

mix raxol.mutation [options]

Options

  • --target - Target module or file to mutate (default: all core modules)
  • --mutations - Number of mutations to generate (default: 10)
  • --operators - Mutation operators to use (default: arithmetic,boolean)
  • --report - Generate detailed report (default: true)
  • --timeout - Test timeout per mutation (default: 30s)

Examples

# Run basic mutation testing
mix raxol.mutation

# Test specific module with more mutations
mix raxol.mutation --target lib/raxol/core/state_manager.ex --mutations 20

# Quick check with limited operators
mix raxol.mutation --operators arithmetic --mutations 5

Mutation Types

This tool implements basic mutation operators:

  1. Arithmetic: +, -, *, / operator changes
  2. Boolean: and/or, true/false flips
  3. Comparison: ==, !=, <, > changes
  4. Conditional: if/unless, positive/negative conditions

Summary

Functions

Callback implementation for Mix.Task.run/1.

Functions

run(args)

@spec run(list()) :: no_return()

Callback implementation for Mix.Task.run/1.