94400d50d4
作为子目录纳入系统,与核心测试管道协同 Co-Authored-By: Claude <noreply@anthropic.com>
22-matching-2stage-MN: Two-Stage M:N Matching
电信业务场景
二级套餐匹配。两段M:N匹配。第一段:基本套餐匹配;第二段:附加套餐匹配。用于叠加套餐的计费处理。
This test verifies two-stage M:N (Cartesian product) matching behavior.
Algorithm
Stage 1: Read FILE-A (file-a.dat) and FILE-B (file-b.dat), write matched records to TEMP-FILE (temp.dat). For each matching key, outputs A_count x B_count records (Cartesian product).
Stage 2: Read TEMP-FILE (temp.dat) and FILE-C (file-c.dat), write matched records to FINAL-OUT (final.dat). For each matching key, outputs temp_count x C_count records (Cartesian product).
Test Data
file-a.dat (4 records)
- KEY00001: 2 records
- KEY00002: 2 records
file-b.dat (3 records)
- KEY00001: 2 records
- KEY00003: 1 record
file-c.dat (4 records)
- KEY00001: 2 records
- KEY00002: 2 records
Expected Results
Stage 1: KEY00001 matches (2x2=4 temp records)
- KEY00002 has no B match (skipped)
- KEY00003 has no A match (skipped)
- Total: 4 records in temp.dat (180 bytes)
Stage 2: 4 temp records (KEY00001) x 2 file-c records (KEY00001) = 8 output records
- Total: 8 records in final.dat (360 bytes)
Files
main-22-matching-2stage-MN.cbl— COBOL programdata-gen.sh— Test data generatorrun.sh— Compile, run, and verify script