feat(joinir): Phase 47-A prep - P3 fixture and test stub
Preparation for Phase 47-A (P3 Normalized minimal implementation). Added fixture and test stub for pattern3_if_sum_minimal. Changes: - fixtures.rs: Added pattern3_if_sum_minimal fixture - Source: phase212_if_sum_min.hako - Pattern: Single carrier (sum), simple condition (i > 0) - Dev-only fixture for P3 Normalized development - normalized_joinir_min.rs: Added test stub - test_normalized_pattern3_if_sum_minimal_runner - Currently returns early (implementation pending) - Feature-gated: #[cfg(feature = "normalized_dev")] - Documentation updates: - CURRENT_TASK.md: Phase 47-A status - PHASE_43_245B_NORMALIZED_COMPLETION.md: P3 forward reference - joinir-architecture-overview.md: Minor formatting - phase47-norm-p3-design.md: Implementation notes Next steps (Phase 47-A implementation): 1. Rename pattern2_step_schedule.rs → step_schedule.rs 2. Add P3 StepKind (IfCond, ThenUpdates, ElseUpdates) 3. Implement Normalized→MIR(direct) for P3 4. Complete test implementation Tests: 937/937 PASS (no behavioral changes yet)
This commit is contained in:
@ -16,6 +16,7 @@ use nyash_rust::mir::join_ir::normalized::fixtures::{
|
||||
build_jsonparser_skip_ws_real_structured_for_normalized_dev,
|
||||
build_jsonparser_skip_ws_structured_for_normalized_dev,
|
||||
build_pattern2_break_fixture_structured, build_pattern2_minimal_structured,
|
||||
build_pattern3_if_sum_min_structured_for_normalized_dev,
|
||||
};
|
||||
use nyash_rust::mir::join_ir_runner::run_joinir_function;
|
||||
use nyash_rust::mir::join_ir_ops::JoinValue;
|
||||
@ -508,6 +509,26 @@ fn normalized_pattern2_jsonparser_atoi_real_vm_bridge_direct_matches_structured(
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn normalized_pattern3_if_sum_minimal_runner_dev_switch_matches_structured() {
|
||||
let _ctx = normalized_dev_test_ctx();
|
||||
let structured = build_pattern3_if_sum_min_structured_for_normalized_dev();
|
||||
let entry = structured.entry.expect("structured entry required");
|
||||
|
||||
// phase212_if_sum_min.hako 相当: sum=2 になることを期待
|
||||
let input: [JoinValue; 0] = [];
|
||||
|
||||
let base = run_joinir_runner(&structured, entry, &input, false);
|
||||
let dev = run_joinir_runner(&structured, entry, &input, true);
|
||||
|
||||
assert_eq!(base, dev, "runner mismatch for P3 minimal if-sum");
|
||||
assert_eq!(
|
||||
dev,
|
||||
JoinValue::Int(2),
|
||||
"unexpected result for P3 minimal if-sum (expected sum=2)",
|
||||
);
|
||||
}
|
||||
|
||||
#[cfg(feature = "normalized_dev")]
|
||||
#[test]
|
||||
fn test_phase46_canonical_set_includes_p2_mid() {
|
||||
|
||||
Reference in New Issue
Block a user