Skip to content

Commit 3b21abf

Browse files
committed
no param after deployment test
1 parent 31e120c commit 3b21abf

File tree

2 files changed

+12
-36
lines changed

2 files changed

+12
-36
lines changed

dev/io.openliberty.mcp.internal/src/io/openliberty/mcp/internal/McpCdiExtension.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ void registerTools(@Observes ProcessManagedBean<?> pmb) {
5353
void afterDeploymentValidation(@Observes AfterDeploymentValidation afterDeploymentValidation, BeanManager manager) {
5454
reportOnDuplicateTools(afterDeploymentValidation);
5555
reportOnToolArgEdgeCases(afterDeploymentValidation);
56+
reportOnToolArgNameNoParams(afterDeploymentValidation);
5657
reportOnDuplicateSpecialArguments(afterDeploymentValidation);
5758
reportOnInvalidSpecialArguments(afterDeploymentValidation);
5859
}
@@ -87,6 +88,10 @@ private void reportOnToolArgEdgeCases(AfterDeploymentValidation afterDeploymentV
8788
}
8889
}
8990

91+
private void reportOnToolArgNameNoParams(AfterDeploymentValidation afterDeploymentValidation) {
92+
93+
}
94+
9095
private void reportOnDuplicateTools(AfterDeploymentValidation afterDeploymentValidation) {
9196
// prune items that are not duplicates
9297
duplicateToolsMap.entrySet().removeIf(e -> e.getValue().size() == 1);

dev/io.openliberty.mcp.internal_fat/fat/src/io/openliberty/mcp/internal/fat/tool/NoParamNameTest.java

Lines changed: 7 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -9,25 +9,18 @@
99
*******************************************************************************/
1010
package io.openliberty.mcp.internal.fat.tool;
1111

12-
import static com.ibm.websphere.simplicity.ShrinkHelper.DeployOptions.SERVER_ONLY;
12+
import java.util.List;
1313

14-
import org.jboss.shrinkwrap.api.ShrinkWrap;
15-
import org.jboss.shrinkwrap.api.spec.WebArchive;
16-
import org.json.JSONObject;
1714
import org.junit.AfterClass;
1815
import org.junit.BeforeClass;
1916
import org.junit.Test;
2017
import org.junit.runner.RunWith;
21-
import org.skyscreamer.jsonassert.JSONAssert;
22-
23-
import com.ibm.websphere.simplicity.ShrinkHelper;
2418

2519
import componenttest.annotation.Server;
2620
import componenttest.custom.junit.runner.FATRunner;
2721
import componenttest.topology.impl.LibertyServer;
2822
import componenttest.topology.utils.FATServletClient;
2923
import io.openliberty.mcp.internal.fat.noparamtool.NoParamTools;
30-
import io.openliberty.mcp.internal.fat.utils.HttpTestUtils;
3124

3225
@RunWith(FATRunner.class)
3326
public class NoParamNameTest extends FATServletClient {
@@ -36,40 +29,18 @@ public class NoParamNameTest extends FATServletClient {
3629

3730
@BeforeClass
3831
public static void setup() throws Exception {
39-
WebArchive war = ShrinkWrap.create(WebArchive.class, "toolTest.war").addPackage(NoParamTools.class.getPackage());
40-
41-
ShrinkHelper.exportDropinAppToServer(server, war, SERVER_ONLY);
42-
43-
server.startServer();
32+
ExpectedAppFailureValidator.deployAppToAssertFailure(server, "ExpectedNoParamNameFailureTest", NoParamTools.class.getPackage());
4433
}
4534

4635
@AfterClass
4736
public static void teardown() throws Exception {
48-
server.stopServer();
37+
server.stopServer(ExpectedAppFailureValidator.APP_START_FAILED_CODE);
4938
}
5039

5140
@Test
52-
public void testIllegalToolArgNameTool() throws Exception {
53-
String request = """
54-
{
55-
"jsonrpc": "2.0",
56-
"id": "2",
57-
"method": "tools/call",
58-
"params": {
59-
"name": "illegalToolArgNameTool",
60-
"arguments": {
61-
"input": "Hello"
62-
}
63-
}
64-
}
65-
""";
66-
67-
String response = HttpTestUtils.callMCP(server, "/toolTest", request);
68-
JSONObject jsonResponse = new JSONObject(response);
69-
70-
String expectedResponseString = """
71-
Exception thrown
72-
""";
73-
JSONAssert.assertEquals(expectedResponseString, response, true);
41+
public void testNoParamNameToolArg() throws Exception {
42+
String expectedErrorHeader = "Blank arguments found in MCP Tool:";
43+
List<String> expectedErrorList = List.of("io.openliberty.mcp.internal.fat.noparamtool.NoParamTools.illegalToolArgNameTool");
44+
ExpectedAppFailureValidator.findAndAssertExpectedErrorsInLogs("Blank Tool Arg: ", expectedErrorHeader, expectedErrorList, server);
7445
}
7546
}

0 commit comments

Comments
 (0)