Skip to content

Commit 05c52d8

Browse files
authored
Stop using DevTools URL util method, reorg tests (flutter#5517)
* Stop using DevTools URL util method, reorg tests * Fix formatting
1 parent deb20c8 commit 05c52d8

File tree

7 files changed

+83
-76
lines changed

7 files changed

+83
-76
lines changed

src/io/flutter/devtools/DevToolsUrl.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,13 @@ public class DevToolsUrl {
2222
public String widgetId;
2323
public Float fontSize;
2424

25-
public DevToolsUrl(String devtoolsHost, int devtoolsPort, String vmServiceUri, String page, boolean embed, String colorHexCode, Float fontSize) {
25+
public DevToolsUrl(String devtoolsHost,
26+
int devtoolsPort,
27+
String vmServiceUri,
28+
String page,
29+
boolean embed,
30+
String colorHexCode,
31+
Float fontSize) {
2632
this.devtoolsHost = devtoolsHost;
2733
this.devtoolsPort = devtoolsPort;
2834
this.vmServiceUri = vmServiceUri;

src/io/flutter/devtools/DevToolsUtils.java

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -6,28 +6,6 @@
66
package io.flutter.devtools;
77

88
public class DevToolsUtils {
9-
public static String generateDevToolsUrl(
10-
String devtoolsHost,
11-
int devtoolsPort,
12-
String serviceProtocolUri,
13-
String page,
14-
boolean embed
15-
) {
16-
return generateDevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, embed, null);
17-
}
18-
19-
public static String generateDevToolsUrl(
20-
String devtoolsHost,
21-
int devtoolsPort,
22-
String serviceProtocolUri,
23-
String page,
24-
boolean embed,
25-
String colorHexCode
26-
) {
27-
final DevToolsUrl devToolsUrl = new DevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, embed, colorHexCode, null);
28-
return devToolsUrl.getUrlString();
29-
}
30-
319
public static String findWidgetId(String url) {
3210
final String searchFor = "inspectorRef=";
3311
final String[] split = url.split("&");

src/io/flutter/performance/FlutterPerformanceView.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
import com.intellij.util.ui.JBUI;
3030
import com.intellij.util.ui.UIUtil;
3131
import icons.FlutterIcons;
32-
import io.flutter.devtools.DevToolsUtils;
32+
import io.flutter.devtools.DevToolsUrl;
3333
import io.flutter.run.FlutterDevice;
3434
import io.flutter.run.FlutterLaunchMode;
3535
import io.flutter.run.daemon.DevToolsService;
@@ -215,8 +215,8 @@ private void addPerformanceViewContent(FlutterApp app, ToolWindow toolWindow) {
215215
}
216216

217217
BrowserLauncher.getInstance().browse(
218-
DevToolsUtils.generateDevToolsUrl(instance.host, instance.port, app.getConnector().getBrowserUrl(), null, false),
219-
null
218+
(new DevToolsUrl(instance.host, instance.port, app.getConnector().getBrowserUrl(), null, false, null, null)).getUrlString(),
219+
null
220220
);
221221
});
222222
}, null);

src/io/flutter/run/OpenDevToolsAction.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
import icons.FlutterIcons;
1515
import io.flutter.FlutterInitializer;
1616
import io.flutter.ObservatoryConnector;
17-
import io.flutter.devtools.DevToolsUtils;
17+
import io.flutter.devtools.DevToolsUrl;
1818
import io.flutter.run.daemon.DevToolsService;
1919
import io.flutter.run.daemon.FlutterApp;
2020
import io.flutter.utils.AsyncUtils;
@@ -75,7 +75,7 @@ public void actionPerformed(@NotNull final AnActionEvent event) {
7575
final String serviceUrl = myConnector != null && myConnector.getBrowserUrl() != null ? myConnector.getBrowserUrl() : null;
7676

7777
BrowserLauncher.getInstance().browse(
78-
DevToolsUtils.generateDevToolsUrl(instance.host, instance.port, serviceUrl, null, false),
78+
(new DevToolsUrl(instance.host, instance.port, serviceUrl, null, false, null, null).getUrlString()),
7979
null
8080
);
8181
});

src/io/flutter/view/FlutterView.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,6 @@
5050
import io.flutter.FlutterInitializer;
5151
import io.flutter.FlutterUtils;
5252
import io.flutter.devtools.DevToolsUrl;
53-
import io.flutter.devtools.DevToolsUtils;
5453
import io.flutter.inspector.DiagnosticsNode;
5554
import io.flutter.inspector.InspectorGroupManagerService;
5655
import io.flutter.inspector.InspectorService;
@@ -297,7 +296,7 @@ private void addBrowserInspectorViewContent(FlutterApp app,
297296
}
298297
} else {
299298
BrowserLauncher.getInstance().browse(
300-
DevToolsUtils.generateDevToolsUrl(devToolsInstance.host, devToolsInstance.port, browserUrl, "inspector", false),
299+
(new DevToolsUrl(devToolsInstance.host, devToolsInstance.port, browserUrl, "inspector", false, null, null).getUrlString()),
301300
null
302301
);
303302
presentLabel(toolWindow, "DevTools inspector has been opened in the browser.");
@@ -950,7 +949,7 @@ public void perform(AnActionEvent event) {
950949
}
951950

952951
BrowserLauncher.getInstance().browse(
953-
DevToolsUtils.generateDevToolsUrl(instance.host, instance.port, urlString, null, false),
952+
(new DevToolsUrl(instance.host, instance.port, urlString, null, false, null, null).getUrlString()),
954953
null
955954
);
956955
});
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
package io.flutter.devtools;
2+
3+
import io.flutter.sdk.FlutterSdkUtil;
4+
import org.junit.Test;
5+
import org.junit.runner.RunWith;
6+
import org.powermock.api.mockito.PowerMockito;
7+
import org.powermock.core.classloader.annotations.PrepareForTest;
8+
import org.powermock.modules.junit4.PowerMockRunner;
9+
10+
import static org.junit.Assert.assertEquals;
11+
12+
@RunWith(PowerMockRunner.class)
13+
@PrepareForTest(FlutterSdkUtil.class)
14+
public class DevToolsUrlTest {
15+
@Test
16+
public void testGetUrlString() {
17+
final String devtoolsHost = "127.0.0.1";
18+
final int devtoolsPort = 9100;
19+
final String serviceProtocolUri = "http://127.0.0.1:50224/WTFTYus3IPU=/";
20+
final String page = "timeline";
21+
22+
PowerMockito.mockStatic(FlutterSdkUtil.class);
23+
PowerMockito.when(FlutterSdkUtil.getFlutterHostEnvValue()).thenReturn("IntelliJ-IDEA");
24+
25+
assertEquals(
26+
"http://127.0.0.1:9100/?ide=IntelliJ-IDEA&page=timeline&uri=http%3A%2F%2F127.0.0.1%3A50224%2FWTFTYus3IPU%3D%2F",
27+
(new DevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, false, null, null)).getUrlString()
28+
);
29+
30+
assertEquals(
31+
"http://127.0.0.1:9100/?ide=IntelliJ-IDEA&page=timeline&embed=true&uri=http%3A%2F%2F127.0.0.1%3A50224%2FWTFTYus3IPU%3D%2F",
32+
(new DevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, true, null, null)).getUrlString()
33+
);
34+
35+
assertEquals(
36+
"http://127.0.0.1:9100/?ide=IntelliJ-IDEA",
37+
(new DevToolsUrl(devtoolsHost, devtoolsPort, null, null, false, null, null).getUrlString())
38+
);
39+
40+
assertEquals(
41+
"http://127.0.0.1:9100/?ide=IntelliJ-IDEA&page=timeline&backgroundColor=ffffff&uri=http%3A%2F%2F127.0.0.1%3A50224%2FWTFTYus3IPU%3D%2F",
42+
(new DevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, false, "ffffff", null).getUrlString())
43+
);
44+
45+
assertEquals(
46+
"http://127.0.0.1:9100/?ide=IntelliJ-IDEA&page=timeline&backgroundColor=ffffff&fontSize=12.0&uri=http%3A%2F%2F127.0.0.1%3A50224%2FWTFTYus3IPU%3D%2F",
47+
(new DevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, false, "ffffff", 12.0f).getUrlString())
48+
);
49+
50+
PowerMockito.when(FlutterSdkUtil.getFlutterHostEnvValue()).thenReturn("Android-Studio");
51+
52+
assertEquals(
53+
"http://127.0.0.1:9100/?ide=Android-Studio&page=timeline&uri=http%3A%2F%2F127.0.0.1%3A50224%2FWTFTYus3IPU%3D%2F",
54+
(new DevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, false, null, null).getUrlString())
55+
);
56+
57+
assertEquals(
58+
"http://127.0.0.1:9100/?ide=Android-Studio&page=timeline&backgroundColor=3c3f41&uri=http%3A%2F%2F127.0.0.1%3A50224%2FWTFTYus3IPU%3D%2F",
59+
(new DevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, false, "3c3f41", null).getUrlString())
60+
);
61+
}
62+
}

testSrc/unit/io/flutter/devtools/DevToolsUtilsTest.java

Lines changed: 7 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -8,62 +8,24 @@
88
import io.flutter.sdk.FlutterSdkUtil;
99
import org.junit.Test;
1010
import org.junit.runner.RunWith;
11-
import org.powermock.api.mockito.PowerMockito;
1211
import org.powermock.core.classloader.annotations.PrepareForTest;
1312
import org.powermock.modules.junit4.PowerMockRunner;
1413

15-
import static io.flutter.devtools.DevToolsUtils.generateDevToolsUrl;
1614
import static org.junit.Assert.assertEquals;
15+
import static org.junit.Assert.assertNull;
1716

1817
@RunWith(PowerMockRunner.class)
1918
@PrepareForTest(FlutterSdkUtil.class)
2019
public class DevToolsUtilsTest {
2120
@Test
22-
public void validDevToolsUrl() {
23-
final String devtoolsHost = "127.0.0.1";
24-
final int devtoolsPort = 9100;
25-
final String serviceProtocolUri = "http://127.0.0.1:50224/WTFTYus3IPU=/";
26-
final String page = "timeline";
27-
final String pageName = "timeline";
28-
29-
PowerMockito.mockStatic(FlutterSdkUtil.class);
30-
PowerMockito.when(FlutterSdkUtil.getFlutterHostEnvValue()).thenReturn("IntelliJ-IDEA");
31-
32-
assertEquals(
33-
"http://127.0.0.1:9100/?ide=IntelliJ-IDEA&page=timeline&uri=http%3A%2F%2F127.0.0.1%3A50224%2FWTFTYus3IPU%3D%2F",
34-
generateDevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, false, null)
35-
);
36-
37-
assertEquals(
38-
"http://127.0.0.1:9100/?ide=IntelliJ-IDEA&page=timeline&embed=true&uri=http%3A%2F%2F127.0.0.1%3A50224%2FWTFTYus3IPU%3D%2F",
39-
generateDevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, true, null)
40-
);
41-
42-
assertEquals(
43-
"http://127.0.0.1:9100/?ide=IntelliJ-IDEA&page=timeline&uri=http%3A%2F%2F127.0.0.1%3A50224%2FWTFTYus3IPU%3D%2F",
44-
generateDevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, false)
45-
);
46-
47-
assertEquals(
48-
"http://127.0.0.1:9100/?ide=IntelliJ-IDEA",
49-
generateDevToolsUrl(devtoolsHost, devtoolsPort, null, null, false, null)
50-
);
51-
52-
PowerMockito.when(FlutterSdkUtil.getFlutterHostEnvValue()).thenReturn("Android-Studio");
53-
21+
public void testFindWidgetId() {
22+
String url = "http://127.0.0.1:9102/#/inspector?uri=http%3A%2F%2F127.0.0.1%3A51805%2FP-f92tUS3r8%3D%2F&inspectorRef=inspector-238";
5423
assertEquals(
55-
generateDevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, false, null),
56-
"http://127.0.0.1:9100/?ide=Android-Studio&page=timeline&uri=http%3A%2F%2F127.0.0.1%3A50224%2FWTFTYus3IPU%3D%2F"
24+
"inspector-238",
25+
DevToolsUtils.findWidgetId(url)
5726
);
5827

59-
assertEquals(
60-
generateDevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, false, "3c3f41"),
61-
"http://127.0.0.1:9100/?ide=Android-Studio&page=timeline&backgroundColor=3c3f41&uri=http%3A%2F%2F127.0.0.1%3A50224%2FWTFTYus3IPU%3D%2F"
62-
);
63-
64-
assertEquals(
65-
generateDevToolsUrl(devtoolsHost, devtoolsPort, serviceProtocolUri, page, false, "ffffff"),
66-
"http://127.0.0.1:9100/?ide=Android-Studio&page=timeline&backgroundColor=ffffff&uri=http%3A%2F%2F127.0.0.1%3A50224%2FWTFTYus3IPU%3D%2F"
67-
);
28+
String noIdUrl = "http://127.0.0.1:9102/#/inspector?uri=http%3A%2F%2F127.0.0.1%3A51805%2FP-f92tUS3r8%3D%2F";
29+
assertNull(DevToolsUtils.findWidgetId(noIdUrl));
6830
}
6931
}

0 commit comments

Comments
 (0)