@@ -63,6 +63,35 @@ public function testEscapedSegment()
63
63
$ this ->assertSame ($ expected , $ result );
64
64
}
65
65
66
+ /** @dataProvider multipleEscapedSegmentsProvider */
67
+ public function testMultipleEscapedSegments ($ string ,$ expected )
68
+ {
69
+ $ result = (new Parser ($ string ))->get ();
70
+ $ this ->assertSame ($ expected ,$ result );
71
+ }
72
+
73
+ public function multipleEscapedSegmentsProvider ()
74
+ {
75
+ return [
76
+ ["EQD+CX??DU12?+3456+2?:0' " , [["EQD " , "CX?DU12+3456 " , "2:0 " ]]],
77
+ ["EQD+CX????DU12?+3456+2?:0' " , [["EQD " , "CX??DU12+3456 " , "2:0 " ]]],
78
+ ["EQD+CX??????DU12?+3456+2?:0' " , [["EQD " , "CX???DU12+3456 " , "2:0 " ]]],
79
+ ["EQD+CX????????DU12?+3456+2?:0' " ,[["EQD " , "CX????DU12+3456 " , "2:0 " ]]],
80
+ ["EQD+CX??DU12?+3456+2?:0??' " , [["EQD " , "CX?DU12+3456 " , "2:0? " ]]],
81
+ ["EQD+CX??DU12?+3456+2?:0????' " , [["EQD " , "CX?DU12+3456 " , "2:0?? " ]]],
82
+ ["EQD+CX??DU12?+3456+2?:0??????' " ,[["EQD " , "CX?DU12+3456 " , "2:0??? " ]]],
83
+ ["??EQD+CX??DU12?+3456+2?:0' " , [["?EQD " , "CX?DU12+3456 " , "2:0 " ]]],
84
+ ["????EQD+CX??DU12?+3456+2?:0' " , [["??EQD " , "CX?DU12+3456 " , "2:0 " ]]],
85
+ ["??????EQD+CX??DU12?+3456+2?:0' " ,[["???EQD " , "CX?DU12+3456 " , "2:0 " ]]],
86
+ ["EQD??+CX??DU12?+3456+2?:0' " , [["EQD? " , "CX?DU12+3456 " , "2:0 " ]]],
87
+ ["EQD????+CX??DU12?+3456+2?:0' " , [["EQD?? " , "CX?DU12+3456 " , "2:0 " ]]],
88
+ ["EQD??????+CX??DU12?+3456+2?:0' " ,[["EQD??? " , "CX?DU12+3456 " , "2:0 " ]]],
89
+ ["EQD+??CX??DU12?+3456+2?:0' " , [["EQD " , "?CX?DU12+3456 " , "2:0 " ]]],
90
+ ["EQD+????CX??DU12?+3456+2?:0' " , [["EQD " , "??CX?DU12+3456 " , "2:0 " ]]],
91
+ ["EQD+??????CX??DU12?+3456+2?:0' " ,[["EQD " , "???CX?DU12+3456 " , "2:0 " ]]],
92
+ ];
93
+ }
94
+
66
95
public function testFileOk ()
67
96
{
68
97
$ string = file_get_contents (__DIR__ . '/../files/example_order_ok.edi ' );
0 commit comments