tbel: Maps docs 'foreach(element : map

This commit is contained in:
nick 2025-03-03 13:02:29 +02:00
parent d0a51cdaeb
commit cf8e3aa4cd

View File

@ -147,6 +147,31 @@ class TbelInvokeDocsIoTest extends AbstractTbelInvokeTest {
assertEquals(expected, actual); assertEquals(expected, actual);
} }
@Test
public void mapsImplicitIterationWithoutEntrySet() throws ExecutionException, InterruptedException {
msgStr = msgMapStr;
decoderStr = """
foreach(element : msg){
if(element.getKey() == null){
return raiseError("Bad getKey");
}
if(element.key == null){
return raiseError("Bad key");
}
if(element.getValue() == null){
return raiseError("Bad getValue");
}
if(element.value == null){
return raiseError("Bad value");
}
}
return msg;
""";
LinkedHashMap<String, Object> expected = expectedMap;
Object actual = invokeScript(evalScript(decoderStr), msgStr);
assertEquals(expected, actual);
}
@Test @Test
public void mapsGetInfoSize_Test() throws ExecutionException, InterruptedException { public void mapsGetInfoSize_Test() throws ExecutionException, InterruptedException {
msgStr = msgMapStr; msgStr = msgMapStr;