tbel: test for docs: add Contains

This commit is contained in:
nick 2025-07-11 18:24:51 +03:00
parent baf68bbbfc
commit 017d523cc6

View File

@ -985,6 +985,29 @@ class TbelInvokeDocsIoTest extends AbstractTbelInvokeTest {
assertEquals(expectedDesc.toString(), ((LinkedHashMap<?, ?>)actual).get("set2_desc").toString()); assertEquals(expectedDesc.toString(), ((LinkedHashMap<?, ?>)actual).get("set2_desc").toString());
} }
@Test
public void setsContains_Test() throws ExecutionException, InterruptedException {
msgStr = """
{"list": ["C", "B", "A", 34567, "B", "C", "hello", 34]}
""";
decoderStr = """
var set1 = createSetTb(msg.list); // create new from method createSetTb(List list) no sort, size = 6 ("A" and "C" is duplicated)
var result1 = set1.contains("A"); // return true
var result2 = set1.contains("H"); // return false
return {
"set1": set1,
"result1": result1,
"result2": result2
}
""";
List<Object> listOrigin = new ArrayList<>(List.of("C", "B", "A", 34567, "B", "C", "hello", 34));
Set<Object> expectedSet = new LinkedHashSet<>(listOrigin);
Object actual = invokeScript(evalScript(decoderStr), msgStr);
assertEquals(expectedSet.toString(), ((LinkedHashMap<?, ?>)actual).get("set1").toString());
assertEquals(true, ((LinkedHashMap<?, ?>)actual).get("result1"));
assertEquals(false, ((LinkedHashMap<?, ?>)actual).get("result2"));
}
@Test @Test
public void setsToList_Test() throws ExecutionException, InterruptedException { public void setsToList_Test() throws ExecutionException, InterruptedException {
msgStr = """ msgStr = """