Extract the JSPackagerWebSocketClient into a reusable packagerconnection module

Reviewed By: cwdick

Differential Revision: D4488628

fbshipit-source-id: ad07b7bfe74c6916beceb0ebcc506a57319f4ae9
This commit is contained in:
Lukas Piatkowski
2017-02-10 10:34:37 -08:00
committed by Facebook Github Bot
parent 3329969b63
commit 6f2544a16b
7 changed files with 75 additions and 49 deletions

View File

@@ -0,0 +1,22 @@
include_defs('//ReactAndroid/DEFS')
rn_robolectric_test(
name = 'packagerconnection',
# Please change the contact to the oncall of your team
contacts = ['oncall+fbandroid_sheriff@xmail.facebook.com'],
srcs = glob(['**/*.java']),
deps = [
react_native_dep('libraries/fbcore/src/test/java/com/facebook/powermock:powermock'),
react_native_dep('third-party/java/fest:fest'),
react_native_dep('third-party/java/jsr-305:jsr-305'),
react_native_dep('third-party/java/junit:junit'),
react_native_dep('third-party/java/mockito:mockito'),
react_native_dep('third-party/java/okhttp:okhttp3'),
react_native_dep('third-party/java/okhttp:okhttp3-ws'),
react_native_dep('third-party/java/robolectric3/robolectric:robolectric'),
react_native_target('java/com/facebook/react/packagerconnection:packagerconnection'),
],
visibility = [
'PUBLIC'
],
)

View File

@@ -7,17 +7,13 @@
* of patent rights can be found in the PATENTS file in the same directory.
*/
package com.facebook.react.devsupport;
package com.facebook.react.packagerconnection;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.ParameterizedRobolectricTestRunner;
import java.io.IOException;
import java.util.Arrays;
import java.util.Collection;
import okhttp3.MediaType;
import okhttp3.ResponseBody;
import okhttp3.ws.WebSocket;
@@ -32,12 +28,10 @@ public class JSPackagerWebSocketClientTest {
final JSPackagerWebSocketClient.JSPackagerCallback callback =
mock(JSPackagerWebSocketClient.JSPackagerCallback.class);
final JSPackagerWebSocketClient client = new JSPackagerWebSocketClient("ws://not_needed", callback);
client.onMessage(ResponseBody.create(WebSocket.TEXT,
"{\"version\": 1, \"target\": \"targetValue\", \"action\": \"actionValue\"}"));
verify(callback).onMessage(
any(JSPackagerWebSocketClient.WebSocketSender.class),
eq("targetValue"),
eq("actionValue"));
client.onMessage(ResponseBody.create(
WebSocket.TEXT,
"{\"version\": 1, \"target\": \"targetValue\", \"action\": \"actionValue\"}"));
verify(callback).onMessage(any(JSPackagerWebSocketClient.WebSocketSender.class), eq("targetValue"), eq("actionValue"));
}
@Test
@@ -45,12 +39,10 @@ public class JSPackagerWebSocketClientTest {
final JSPackagerWebSocketClient.JSPackagerCallback callback =
mock(JSPackagerWebSocketClient.JSPackagerCallback.class);
final JSPackagerWebSocketClient client = new JSPackagerWebSocketClient("ws://not_needed", callback);
client.onMessage(ResponseBody.create(WebSocket.BINARY,
"{\"version\": 1, \"target\": \"targetValue\", \"action\": \"actionValue\"}"));
verify(callback, never()).onMessage(
any(JSPackagerWebSocketClient.WebSocketSender.class),
anyString(),
anyString());
client.onMessage(ResponseBody.create(
WebSocket.BINARY,
"{\"version\": 1, \"target\": \"targetValue\", \"action\": \"actionValue\"}"));
verify(callback, never()).onMessage(any(JSPackagerWebSocketClient.WebSocketSender.class), anyString(), anyString());
}
@Test
@@ -58,12 +50,10 @@ public class JSPackagerWebSocketClientTest {
final JSPackagerWebSocketClient.JSPackagerCallback callback =
mock(JSPackagerWebSocketClient.JSPackagerCallback.class);
final JSPackagerWebSocketClient client = new JSPackagerWebSocketClient("ws://not_needed", callback);
client.onMessage(ResponseBody.create(WebSocket.TEXT,
"{\"version\": 1, \"action\": \"actionValue\"}"));
verify(callback, never()).onMessage(
any(JSPackagerWebSocketClient.WebSocketSender.class),
anyString(),
anyString());
client.onMessage(ResponseBody.create(
WebSocket.TEXT,
"{\"version\": 1, \"action\": \"actionValue\"}"));
verify(callback, never()).onMessage(any(JSPackagerWebSocketClient.WebSocketSender.class), anyString(), anyString());
}
@Test
@@ -71,12 +61,10 @@ public class JSPackagerWebSocketClientTest {
final JSPackagerWebSocketClient.JSPackagerCallback callback =
mock(JSPackagerWebSocketClient.JSPackagerCallback.class);
final JSPackagerWebSocketClient client = new JSPackagerWebSocketClient("ws://not_needed", callback);
client.onMessage(ResponseBody.create(WebSocket.TEXT,
"{\"version\": 1, \"target\": null, \"action\": \"actionValue\"}"));
verify(callback, never()).onMessage(
any(JSPackagerWebSocketClient.WebSocketSender.class),
anyString(),
anyString());
client.onMessage(ResponseBody.create(
WebSocket.TEXT,
"{\"version\": 1, \"target\": null, \"action\": \"actionValue\"}"));
verify(callback, never()).onMessage(any(JSPackagerWebSocketClient.WebSocketSender.class), anyString(), anyString());
}
@Test
@@ -84,12 +72,10 @@ public class JSPackagerWebSocketClientTest {
final JSPackagerWebSocketClient.JSPackagerCallback callback =
mock(JSPackagerWebSocketClient.JSPackagerCallback.class);
final JSPackagerWebSocketClient client = new JSPackagerWebSocketClient("ws://not_needed", callback);
client.onMessage(ResponseBody.create(WebSocket.TEXT,
"{\"version\": 1, \"target\": \"targetValue\"}"));
verify(callback, never()).onMessage(
any(JSPackagerWebSocketClient.WebSocketSender.class),
anyString(),
anyString());
client.onMessage(ResponseBody.create(
WebSocket.TEXT,
"{\"version\": 1, \"target\": \"targetValue\"}"));
verify(callback, never()).onMessage(any(JSPackagerWebSocketClient.WebSocketSender.class), anyString(), anyString());
}
@Test
@@ -97,12 +83,10 @@ public class JSPackagerWebSocketClientTest {
final JSPackagerWebSocketClient.JSPackagerCallback callback =
mock(JSPackagerWebSocketClient.JSPackagerCallback.class);
final JSPackagerWebSocketClient client = new JSPackagerWebSocketClient("ws://not_needed", callback);
client.onMessage(ResponseBody.create(WebSocket.TEXT,
"{\"version\": 1, \"target\": \"targetValue\", \"action\": null}"));
verify(callback, never()).onMessage(
any(JSPackagerWebSocketClient.WebSocketSender.class),
anyString(),
anyString());
client.onMessage(ResponseBody.create(
WebSocket.TEXT,
"{\"version\": 1, \"target\": \"targetValue\", \"action\": null}"));
verify(callback, never()).onMessage(any(JSPackagerWebSocketClient.WebSocketSender.class), anyString(), anyString());
}
@Test
@@ -110,11 +94,9 @@ public class JSPackagerWebSocketClientTest {
final JSPackagerWebSocketClient.JSPackagerCallback callback =
mock(JSPackagerWebSocketClient.JSPackagerCallback.class);
final JSPackagerWebSocketClient client = new JSPackagerWebSocketClient("ws://not_needed", callback);
client.onMessage(ResponseBody.create(WebSocket.TEXT,
"{\"version\": 2, \"target\": \"targetValue\", \"action\": \"actionValue\"}"));
verify(callback, never()).onMessage(
any(JSPackagerWebSocketClient.WebSocketSender.class),
anyString(),
anyString());
client.onMessage(ResponseBody.create(
WebSocket.TEXT,
"{\"version\": 2, \"target\": \"targetValue\", \"action\": \"actionValue\"}"));
verify(callback, never()).onMessage(any(JSPackagerWebSocketClient.WebSocketSender.class), anyString(), anyString());
}
}