Expand description
§Mutation Core
A mutation testing tool for Bitcoin Core written in Rust.
This library provides functionality to:
- Generate mutants for Bitcoin Core source code
- Analyze mutants by running tests against them
- Generate detailed reports of surviving mutants
- AST-based arid node detection to filter unproductive mutants
§Example
use bcore_mutation::mutation;
use std::collections::HashMap;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
// Generate mutants for a specific file with AST filtering
mutation::run_mutation(
None, // PR number
Some("src/test.cpp".into()), // file path
false, // one_mutant
false, // only_security_mutations
None, // range_lines
None, // coverage
false, // test_only
HashMap::new(), // skip_lines
true, // enable_ast_filtering
None, // custom_expert_rule
).await?;
Ok(())
}Re-exports§
pub use error::MutationError;pub use error::Result;
Modules§
- analyze
- ast_
analysis - coverage
- error
- git_
changes - mutation
- operators
- prelude
- Re-export commonly used types
- report