summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAustin Kirk <askirk@umich.edu>2017-05-04 16:08:32 -0400
committerAustin Kirk <askirk@umich.edu>2017-05-04 16:08:32 -0400
commit61a72874261ffceb0d43b1935b9e528c029637c7 (patch)
tree3ac67101cf42214005a5dabeed2bd660e7944588
parent735fd837a76150d8b33183221d353c64c4389835 (diff)
downloadsdl_android-bugfix/utest_MultiplexBluetoothTransport.tar.gz
Fixing which thread this runs on, and now can test with BT adapterbugfix/utest_MultiplexBluetoothTransport
-rw-r--r--sdl_android/src/androidTest/java/com/smartdevicelink/test/transport/MultiplexBluetoothTransportTest.java64
1 files changed, 30 insertions, 34 deletions
diff --git a/sdl_android/src/androidTest/java/com/smartdevicelink/test/transport/MultiplexBluetoothTransportTest.java b/sdl_android/src/androidTest/java/com/smartdevicelink/test/transport/MultiplexBluetoothTransportTest.java
index 8948a5e0c..9f6ef3c2b 100644
--- a/sdl_android/src/androidTest/java/com/smartdevicelink/test/transport/MultiplexBluetoothTransportTest.java
+++ b/sdl_android/src/androidTest/java/com/smartdevicelink/test/transport/MultiplexBluetoothTransportTest.java
@@ -1,6 +1,7 @@
package com.smartdevicelink.test.transport;
import android.os.Handler;
+import android.os.Looper;
import android.os.Message;
import com.smartdevicelink.transport.MultiplexBluetoothTransport;
@@ -8,8 +9,6 @@ import com.smartdevicelink.transport.SdlRouterService;
import junit.framework.TestCase;
-import static android.support.test.InstrumentationRegistry.getInstrumentation;
-
public class MultiplexBluetoothTransportTest extends TestCase {
@@ -22,46 +21,43 @@ public class MultiplexBluetoothTransportTest extends TestCase {
Handler stateChangeHandler;
public void testStateTransitions() {
+ if(Looper.myLooper() == null){
+ Looper.prepare();
+ }
- getInstrumentation().runOnMainSync(new Runnable() {
+ stateChangeHandler = new Handler(){
+ int stateDesired = MultiplexBluetoothTransport.STATE_LISTEN;
@Override
- public void run() {
-
- stateChangeHandler = new Handler(){
- int stateDesired = MultiplexBluetoothTransport.STATE_LISTEN;
- @Override
- public void handleMessage(Message msg) {
- if(!isWaitingForResponse){
- return;
- }
- switch(msg.what){
- case SdlRouterService.MESSAGE_STATE_CHANGE:
- if(msg.arg1 == stateDesired){
- didCorrectThing = true;
- break;
- }
- default:
- didCorrectThing = false;
+ public void handleMessage(Message msg) {
+ if(!isWaitingForResponse){
+ return;
+ }
+ switch(msg.what){
+ case SdlRouterService.MESSAGE_STATE_CHANGE:
+ if(msg.arg1 == stateDesired){
+ didCorrectThing = true;
+ break;
}
- REQUEST_LOCK.notify();
- }
-
- };
+ default:
+ didCorrectThing = false;
+ }
+ REQUEST_LOCK.notify();
+ }
- //TODO test for more than the two states
- bluetooth = MultiplexBluetoothTransport.getBluetoothSerialServerInstance();
- assertNull(bluetooth);
+ };
- bluetooth = MultiplexBluetoothTransport.getBluetoothSerialServerInstance(stateChangeHandler);
- assertEquals(bluetooth.getState(), MultiplexBluetoothTransport.STATE_NONE);
+ //TODO test for more than the two states
+ bluetooth = MultiplexBluetoothTransport.getBluetoothSerialServerInstance();
+ assertNull(bluetooth);
- //TODO test changing to a different state without having Bluetooth permissions
+ bluetooth = MultiplexBluetoothTransport.getBluetoothSerialServerInstance(stateChangeHandler);
+ assertEquals(bluetooth.getState(), MultiplexBluetoothTransport.STATE_NONE);
- bluetooth.stop();
- assertEquals(bluetooth.getState(), MultiplexBluetoothTransport.STATE_NONE);
+ bluetooth.start();
+ assertEquals(bluetooth.getState(), MultiplexBluetoothTransport.STATE_LISTEN);
- }
- });
+ bluetooth.stop();
+ assertEquals(bluetooth.getState(), MultiplexBluetoothTransport.STATE_NONE);
}
private void notifyResponseReceived(){