77import org .junit .jupiter .api .Test ;
88
99import java .util .Collections ;
10- import java .util .List ;
11- import java .util .Map ;
1210
11+ import static io .github .easy4j .opencode .Java8Collections .list ;
12+ import static io .github .easy4j .opencode .Java8Collections .map ;
1313import static org .junit .jupiter .api .Assertions .*;
1414
1515/**
@@ -83,7 +83,7 @@ void shouldCreateChatRequestWithAllFields() {
8383 req .setModel ("anthropic/claude-sonnet-4-5" );
8484 req .setMessages (Collections .singletonList (ChatMessage .user ("hi" )));
8585 req .setStream (true );
86- req .setStreamOptions (Map . of ("include_usage" , true ));
86+ req .setStreamOptions (map ("include_usage" , true ));
8787 req .setAgent ("coder" );
8888 req .setSystem ("system prompt" );
8989 req .setMaxTokens (1024 );
@@ -223,7 +223,7 @@ void shouldCreateCommand() {
223223 cmd .setName ("/help" );
224224 cmd .setDescription ("Show help" );
225225 cmd .setTemplate ("help {{arg}}" );
226- cmd .setArgs (List . of ("arg" ));
226+ cmd .setArgs (list ("arg" ));
227227 cmd .setAgent ("coder" );
228228 assertEquals ("/help" , cmd .getName ());
229229 assertEquals ("Show help" , cmd .getDescription ());
@@ -240,7 +240,7 @@ void shouldCreateCommand() {
240240 void shouldCreateEvent () {
241241 SseEvent event = new SseEvent ();
242242 event .setType ("session.idle" );
243- event .setProperties (Map . of ("sessionID" , "sess-1" ));
243+ event .setProperties (map ("sessionID" , "sess-1" ));
244244 assertEquals ("session.idle" , event .getType ());
245245 assertEquals ("sess-1" , event .getProperties ().get ("sessionID" ));
246246 }
@@ -309,10 +309,10 @@ void shouldCreateFileNode() {
309309 void shouldCreateFileSearchResult () {
310310 FileSearchResult result = new FileSearchResult ();
311311 result .setPath ("src/Main.java" );
312- result .setLines (List . of ("public class Main {}" ));
312+ result .setLines (list ("public class Main {}" ));
313313 result .setLineNumber (1 );
314314 result .setAbsoluteOffset (0 );
315- result .setSubmatches (List . of ());
315+ result .setSubmatches (list ());
316316 assertEquals ("src/Main.java" , result .getPath ());
317317 assertEquals (1 , result .getLineNumber ());
318318 }
@@ -355,7 +355,7 @@ void shouldCreateLspStatus() {
355355 lsp .setName ("Eclipse JDT" );
356356 lsp .setRoot ("/project" );
357357 lsp .setStatus ("running" );
358- lsp .setDiagnostics (List . of ());
358+ lsp .setDiagnostics (list ());
359359 assertEquals ("jdtls" , lsp .getId ());
360360 assertEquals ("running" , lsp .getStatus ());
361361 }
@@ -369,8 +369,8 @@ void shouldCreateMcpStatus() {
369369 McpStatus mcp = new McpStatus ();
370370 mcp .setName ("github" );
371371 mcp .setStatus ("connected" );
372- mcp .setConfig (Map . of ("url" , "http://localhost" ));
373- mcp .setTools (List . of ("tool1" ));
372+ mcp .setConfig (map ("url" , "http://localhost" ));
373+ mcp .setTools (list ("tool1" ));
374374 assertEquals ("github" , mcp .getName ());
375375 assertEquals ("connected" , mcp .getStatus ());
376376 assertEquals (1 , mcp .getTools ().size ());
@@ -403,7 +403,7 @@ void shouldCreateMessageInfo() {
403403 Message msg = new Message ();
404404 msg .setId ("msg-1" );
405405 info .setInfo (msg );
406- info .setParts (List . of ());
406+ info .setParts (list ());
407407 assertEquals ("msg-1" , info .getInfo ().getId ());
408408 assertTrue (info .getParts ().isEmpty ());
409409 }
@@ -424,15 +424,15 @@ void shouldCreateOpenCodeConfig() {
424424 cfg .setUsername ("user" );
425425 cfg .setShare ("public" );
426426 cfg .setAutoshare (true );
427- cfg .setMode (Map . of ("k" , "v" ));
428- cfg .setProvider_ (Map . of ("k" , "v" ));
429- cfg .setProviders (Map . of ("k" , "v" ));
430- cfg .setAgent_ (Map . of ("k" , "v" ));
431- cfg .setAgents (Map . of ("k" , "v" ));
432- cfg .setPermission (Map . of ("k" , "v" ));
433- cfg .setTools (Map . of ("k" , "v" ));
434- cfg .setExperimental (Map . of ("k" , "v" ));
435- cfg .setExtra (Map . of ("k" , "v" ));
427+ cfg .setMode (map ("k" , "v" ));
428+ cfg .setProvider_ (map ("k" , "v" ));
429+ cfg .setProviders (map ("k" , "v" ));
430+ cfg .setAgent_ (map ("k" , "v" ));
431+ cfg .setAgents (map ("k" , "v" ));
432+ cfg .setPermission (map ("k" , "v" ));
433+ cfg .setTools (map ("k" , "v" ));
434+ cfg .setExperimental (map ("k" , "v" ));
435+ cfg .setExtra (map ("k" , "v" ));
436436 assertEquals ("dark" , cfg .getTheme ());
437437 assertEquals ("anthropic/claude-sonnet-4-5" , cfg .getModel ());
438438 assertEquals ("coder" , cfg .getAgent ());
@@ -498,8 +498,8 @@ void shouldCreatePermissionRequest() {
498498 pr .setSessionID ("sess-1" );
499499 pr .setPermission ("bash" );
500500 pr .setDescription ("run ls" );
501- pr .setMetadata (Map . of ("command" , "ls" ));
502- pr .setPatterns (List . of ("ls *" ));
501+ pr .setMetadata (map ("command" , "ls" ));
502+ pr .setPatterns (list ("ls *" ));
503503 assertEquals ("perm-1" , pr .getId ());
504504 assertEquals ("bash" , pr .getPermission ());
505505 assertEquals (1 , pr .getPatterns ().size ());
@@ -518,7 +518,7 @@ void shouldCreateProject() {
518518 project .setWorktree ("/project" );
519519 project .setVcsDir ("/project/.git" );
520520 project .setVcs ("git" );
521- project .setSandboxes (List . of ("sandbox1" ));
521+ project .setSandboxes (list ("sandbox1" ));
522522 project .setCreatedAt ("2025-01-01" );
523523 assertEquals ("proj-1" , project .getId ());
524524 assertEquals ("my-project" , project .getName ());
@@ -550,7 +550,7 @@ void shouldCreatePromptRequestOfTextWithModel() {
550550 @ Test
551551 void shouldSetAllPromptRequestFields () {
552552 PromptRequest req = new PromptRequest ();
553- req .setParts (List . of ());
553+ req .setParts (list ());
554554 req .setModel (new PromptRequest .ModelRef ("anthropic" , "claude-sonnet-4-5" ));
555555 req .setAgent ("coder" );
556556 req .setNoReply (true );
@@ -577,7 +577,7 @@ void shouldExtractTextContent() {
577577 toolPart .setText ("ignored" );
578578
579579 PromptResult result = new PromptResult ();
580- result .setParts (List . of (textPart , textPart2 , toolPart ));
580+ result .setParts (list (textPart , textPart2 , toolPart ));
581581 assertEquals ("hello world" , result .getTextContent ());
582582 }
583583
@@ -593,7 +593,7 @@ void shouldReturnEmptyStringWhenNoTextParts() {
593593 toolPart .setType ("tool_use" );
594594 toolPart .setText ("data" );
595595 PromptResult result = new PromptResult ();
596- result .setParts (List . of (toolPart ));
596+ result .setParts (list (toolPart ));
597597 assertEquals ("" , result .getTextContent ());
598598 }
599599
@@ -608,9 +608,9 @@ void shouldCreateProvider() {
608608 p .setName ("Anthropic" );
609609 p .setDescription ("AI provider" );
610610 p .setSource ("builtin" );
611- p .setAuthMethods (List . of ());
612- p .setModels (Map . of ());
613- p .setOptions (Map . of ());
611+ p .setAuthMethods (list ());
612+ p .setModels (map ());
613+ p .setOptions (map ());
614614 assertEquals ("anthropic" , p .getId ());
615615 assertEquals ("Anthropic" , p .getName ());
616616 }
@@ -642,9 +642,9 @@ void shouldCreateProviderAuthMethod() {
642642 ProviderAuthMethod method = new ProviderAuthMethod ();
643643 method .setLabel ("API Key" );
644644 method .setType ("api-key" );
645- method .setSchema (Map . of ("type" , "string" ));
646- method .setPrefill (Map . of ());
647- method .setPromptOptions (List . of ());
645+ method .setSchema (map ("type" , "string" ));
646+ method .setPrefill (map ());
647+ method .setPromptOptions (list ());
648648 assertEquals ("API Key" , method .getLabel ());
649649 assertEquals ("api-key" , method .getType ());
650650 }
@@ -656,10 +656,10 @@ void shouldCreateProviderAuthMethod() {
656656 @ Test
657657 void shouldCreateProviderList () {
658658 ProviderList list = new ProviderList ();
659- list .setAll (List . of ());
660- list .setDefaults (Map . of ("default" , "anthropic/claude-sonnet-4-5" ));
661- list .setDefault_ (Map . of ("default" , "anthropic/claude-sonnet-4-5" ));
662- list .setConnected (List . of ("anthropic" ));
659+ list .setAll (list ());
660+ list .setDefaults (map ("default" , "anthropic/claude-sonnet-4-5" ));
661+ list .setDefault_ (map ("default" , "anthropic/claude-sonnet-4-5" ));
662+ list .setConnected (list ("anthropic" ));
663663 assertTrue (list .getAll ().isEmpty ());
664664 assertEquals (1 , list .getConnected ().size ());
665665 }
@@ -679,7 +679,7 @@ void shouldCreateQuestionRequest() {
679679 opt .setLabel ("Option A" );
680680 opt .setDescription ("First option" );
681681 opt .setPreview ("preview" );
682- qr .setOptions (List . of (opt ));
682+ qr .setOptions (list (opt ));
683683 assertEquals ("q-1" , qr .getId ());
684684 assertEquals (1 , qr .getOptions ().size ());
685685 assertEquals ("Option A" , qr .getOptions ().get (0 ).getLabel ());
@@ -697,7 +697,7 @@ void shouldCreateSession() {
697697 s .setParentId (null );
698698 s .setCreatedAt ("2025-01-01" );
699699 s .setUpdatedAt ("2025-01-02" );
700- s .setMetadata (Map . of ("key" , "val" ));
700+ s .setMetadata (map ("key" , "val" ));
701701 assertEquals ("sess-1" , s .getId ());
702702 assertEquals ("my-session" , s .getTitle ());
703703 }
@@ -759,7 +759,7 @@ void shouldCreateSymbol() {
759759 sym .setContainerName ("io.github.easy4j.opencode" );
760760 sym .setLocation ("OpenCodeClient.java:50" );
761761 sym .setUri ("file:///project/OpenCodeClient.java" );
762- sym .setRange (Map . of ());
762+ sym .setRange (map ());
763763 assertEquals ("OpenCodeClient" , sym .getName ());
764764 assertEquals ("class" , sym .getKind ());
765765 }
0 commit comments