use miden_processor::ExecutionOptions;
#[test]
fn test_cli_release_flag_controls_execution() {
const DEFAULT_FRAGMENT_SIZE: usize = 4096;
let debug_options = ExecutionOptions::new(
Some(ExecutionOptions::MAX_CYCLES),
64,
DEFAULT_FRAGMENT_SIZE,
false,
true,
)
.expect("Default should enable debugging");
assert!(debug_options.enable_debugging(), "CLI default should enable debug mode");
let release_options = ExecutionOptions::new(
Some(ExecutionOptions::MAX_CYCLES),
64,
DEFAULT_FRAGMENT_SIZE,
false,
false,
)
.expect("--release should disable debugging");
assert!(!release_options.enable_debugging(), "CLI --release should disable debug mode");
let trace_options = ExecutionOptions::new(
Some(ExecutionOptions::MAX_CYCLES),
64,
DEFAULT_FRAGMENT_SIZE,
true,
true,
)
.expect("--trace should enable tracing");
assert!(trace_options.enable_tracing(), "CLI --trace should enable trace decorators");
assert!(
!release_options.enable_tracing(),
"Release mode without trace should skip decorators"
);
assert!(
!release_options.enable_debugging(),
"Release mode should disable debug decorators"
);
}