Fix #173: Split eval_test.exs into multiple focused test files#182
Fix #173: Split eval_test.exs into multiple focused test files#182andreasronge merged 1 commit intomainfrom
Conversation
Splits the large eval_test.exs (1078 lines, 114 tests) into 6 focused test files: - eval_data_types_test.exs: literal, vector, map, set evaluation - eval_control_flow_test.exs: variable access, and/or, if, let, where, predicates - eval_functions_test.exs: fn, closures, destructuring, multi-arity, builtins - eval_errors_test.exs: error propagation in structures, bindings, calls - eval_memory_test.exs: memory threading through evaluation - eval_sets_test.exs: set predicates, constructor, collection operations Follows the pattern from issue #95 for organizing test files by functional area. Each file is self-contained with proper module setup and helper functions. Test count remains at 114 tests. Fixes #173 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
PR Review: Fix #173: Split eval_test.exs into multiple focused test filesSummarySuccessfully splits the monolithic What's Good
Issues (Must Fix)None. Suggestions (Optional)
SecurityNo concerns. This is a test file reorganization with no functional changes. DocumentationNo updates needed. The test organization documentation in VerdictApprove. Clean implementation of a straightforward tech debt task. All acceptance criteria from issue #173 are met:
|
Auto-Triage SummaryDecisions Made
Status
ReasoningThe review identified one optional suggestion about extracting the duplicated Decision: Created issue #183 to track this tech debt. The duplication is minimal (~1 line per file) and doesn't block this PR, which successfully accomplishes its stated goal of splitting the monolithic test file. Since there are no FIX_NOW items, this PR is ready to merge pending CI checks. |
Summary
Split
test/ptc_runner/lisp/eval_test.exs(1078 lines, 114 tests) into 6 focused test files to improve maintainability and navigation:eval_data_types_test.exs- literal, vector, map, set evaluation tests (~170 lines)eval_control_flow_test.exs- variable access, and/or, if, let, where, predicates (~230 lines)eval_functions_test.exs- fn, closures, destructuring, multi-arity, builtins (~385 lines)eval_errors_test.exs- error propagation tests (~160 lines)eval_memory_test.exs- memory threading tests (~27 lines)eval_sets_test.exs- set predicates, constructor, collection operations (~70 lines)Test plan
✅ All 114 tests pass
✅ Pre-commit checks pass
✅ Each file is self-contained with proper module setup
✅ Pattern follows established precedent from issue #95
Fixes #173
🤖 Generated with Claude Code