diff options
| author | Austin Kirk <askirk@umich.edu> | 2017-05-04 16:08:32 -0400 |
|---|---|---|
| committer | Austin Kirk <askirk@umich.edu> | 2017-05-04 16:08:32 -0400 |
| commit | 61a72874261ffceb0d43b1935b9e528c029637c7 (patch) | |
| tree | 3ac67101cf42214005a5dabeed2bd660e7944588 | |
| parent | 735fd837a76150d8b33183221d353c64c4389835 (diff) | |
| download | sdl_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.java | 64 |
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(){ |
