Skip to content

Commit 6ed580d

Browse files
committed
test: serialize launch request with Gson
Copilot-Session: c3cd113b-dad4-4d4d-90c2-60abfd204405
1 parent 3357d6e commit 6ed580d

2 files changed

Lines changed: 13 additions & 12 deletions

File tree

java-extension/com.microsoft.java.test.plugin.test/META-INF/MANIFEST.MF

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ Bundle-Localization: plugin
1010
Bundle-ActivationPolicy: lazy
1111
Require-Bundle: org.eclipse.jdt.ls.core,
1212
com.microsoft.java.test.plugin,
13+
com.google.gson,
1314
org.junit,
1415
org.apache.commons.commons-io;bundle-version="2.12.0",
1516
org.eclipse.core.resources,

java-extension/com.microsoft.java.test.plugin.test/src/com/microsoft/java/test/plugin/launchers/JUnitLaunchConfigurationDelegateTest.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@
1616
import static org.junit.Assert.assertTrue;
1717

1818
import java.util.Arrays;
19+
import java.util.LinkedHashMap;
1920
import java.util.List;
21+
import java.util.Map;
2022

2123
import org.eclipse.core.resources.IProject;
2224
import org.eclipse.core.runtime.NullProgressMonitor;
@@ -27,6 +29,7 @@
2729

2830
import com.microsoft.java.test.plugin.AbstractProjectsManagerBasedTest;
2931
import com.microsoft.java.test.plugin.model.Response;
32+
import com.google.gson.Gson;
3033

3134
public class JUnitLaunchConfigurationDelegateTest extends AbstractProjectsManagerBasedTest {
3235

@@ -53,17 +56,17 @@ public void testAddOpensForAllSelectedPackagesInModularProject() throws Exceptio
5356
assertNotNull(firstTest);
5457
assertNotNull(secondTest);
5558

56-
final String launchRequest = String.format(
57-
"{\"projectName\":%s,\"testLevel\":5,\"testKind\":0,\"testNames\":[%s,%s],"
58-
+ "\"testHandles\":[%s,%s]}",
59-
toJsonString(javaProject.getElementName()),
60-
toJsonString(firstTest.getFullyQualifiedName()),
61-
toJsonString(secondTest.getFullyQualifiedName()),
62-
toJsonString(firstTest.getHandleIdentifier()),
63-
toJsonString(secondTest.getHandleIdentifier()));
59+
final Map<String, Object> request = new LinkedHashMap<>();
60+
request.put("projectName", javaProject.getElementName());
61+
request.put("testLevel", 5);
62+
request.put("testKind", 0);
63+
request.put("testNames", Arrays.asList(
64+
firstTest.getFullyQualifiedName(), secondTest.getFullyQualifiedName()));
65+
request.put("testHandles", Arrays.asList(
66+
firstTest.getHandleIdentifier(), secondTest.getHandleIdentifier()));
6467

6568
final Response<JUnitLaunchArguments> response = JUnitLaunchUtils.resolveLaunchArgument(
66-
Arrays.asList(launchRequest), new NullProgressMonitor());
69+
Arrays.asList(new Gson().toJson(request)), new NullProgressMonitor());
6770

6871
assertEquals(0, response.getStatus());
6972
final List<String> vmArguments = Arrays.asList(response.getBody().vmArguments);
@@ -79,7 +82,4 @@ public void testAddOpensForAllSelectedPackagesInModularProject() throws Exceptio
7982
assertEquals("--add-opens", vmArguments.get(vmArguments.indexOf(secondPackageOpen) - 1));
8083
}
8184

82-
private static String toJsonString(String value) {
83-
return "\"" + value.replace("\\", "\\\\").replace("\"", "\\\"") + "\"";
84-
}
8585
}

0 commit comments

Comments
 (0)