@@ -234,4 +234,27 @@ public function testTooManyElements()
234234 static ::assertCount (0 , $ errors );
235235 static ::assertArrayHasKey ('Extension2 ' , $ svcSegs ['interchangeTrailer ' ]);
236236 }
237+
238+ public function testIdInsteadOfName ()
239+ {
240+ $ edi = \file_get_contents (__DIR__ . '/../files/D96ADESADV.edi ' );
241+ $ parser = new Parser ($ edi );
242+ $ mapping = new \EDI \Mapping \MappingProvider ($ parser ->getMessageDirectory ());
243+ $ analyser = new Analyser ();
244+ $ segs = $ analyser ->loadSegmentsXml ($ mapping ->getSegments ());
245+ $ svc = $ analyser ->loadSegmentsXml ($ mapping ->getServiceSegments (3 ));
246+
247+ $ interpreter = new Interpreter ($ mapping ->getMessage ($ parser ->getMessageFormat ()), $ segs , $ svc );
248+ $ interpreter ->toggleUseIdInsteadOfNameForOutput (true );
249+
250+ $ p = $ interpreter ->prepare ($ parser ->get ());
251+ static ::assertSame ([], $ parser ->errors ());
252+
253+ static ::assertArrayHasKey ('BGM ' , $ p [0 ]);
254+ static ::assertArrayHasKey ('C002 ' , $ p [0 ]['BGM ' ]);
255+ static ::assertArrayHasKey ('1001 ' , $ p [0 ]['BGM ' ]['C002 ' ]);
256+ static ::assertSame ('351 ' , $ p [0 ]['BGM ' ]['C002 ' ]['1001 ' ]);
257+ static ::assertArrayHasKey ('SG10 ' , $ p [0 ]);
258+ static ::assertArrayHasKey ('CPS ' , $ p [0 ]['SG10 ' ][0 ]);
259+ }
237260}
0 commit comments