Shown toast when BT turned on

* Shown "Bluetooth turned on" toast only when BT turned on in "Pair new device"
* Add test to verify shown toast function can be called when BT turned on.

Bug: 79383997
Test: make -j42 RunSettingsRoboTests ROBOTEST_FILTER=BluetoothPairingDetailTest
Change-Id: I25f75aaa04063d9ef8a0df4bb06aeaa70d7ac146
This commit is contained in:
hughchen
2018-05-30 17:19:41 +08:00
parent 1c7ae169ac
commit 3051845840
3 changed files with 20 additions and 0 deletions

View File

@@ -431,6 +431,8 @@
<string name="connected_device_previously_connected_title">Previously connected devices</string> <string name="connected_device_previously_connected_title">Previously connected devices</string>
<!-- Preference screen title for Bluetooth preference to open paired but no connection list [CHAR LIMIT=none]--> <!-- Preference screen title for Bluetooth preference to open paired but no connection list [CHAR LIMIT=none]-->
<string name="connected_device_previously_connected_screen_title">Previously connected</string> <string name="connected_device_previously_connected_screen_title">Previously connected</string>
<!-- Toast text for hint user bluetooth is turned on [CHAR LIMIT=none]-->
<string name="connected_device_bluetooth_turned_on_toast">Bluetooth turned on</string>
<!-- Date & time settings screen title --> <!-- Date & time settings screen title -->
<string name="date_and_time">Date &amp; time</string> <string name="date_and_time">Date &amp; time</string>

View File

@@ -22,6 +22,7 @@ import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice; import android.bluetooth.BluetoothDevice;
import android.content.Context; import android.content.Context;
import android.os.Bundle; import android.os.Bundle;
import android.widget.Toast;
import androidx.annotation.VisibleForTesting; import androidx.annotation.VisibleForTesting;
import android.util.Log; import android.util.Log;
@@ -166,6 +167,9 @@ public class BluetoothPairingDetail extends DeviceListPreferenceFragment impleme
public void onBluetoothStateChanged(int bluetoothState) { public void onBluetoothStateChanged(int bluetoothState) {
super.onBluetoothStateChanged(bluetoothState); super.onBluetoothStateChanged(bluetoothState);
updateContent(bluetoothState); updateContent(bluetoothState);
if (bluetoothState == BluetoothAdapter.STATE_ON) {
showBluetoothTurnedOnToast();
}
} }
@Override @Override
@@ -205,4 +209,9 @@ public class BluetoothPairingDetail extends DeviceListPreferenceFragment impleme
return KEY_AVAIL_DEVICES; return KEY_AVAIL_DEVICES;
} }
@VisibleForTesting
void showBluetoothTurnedOnToast() {
Toast.makeText(getContext(), R.string.connected_device_bluetooth_turned_on_toast,
Toast.LENGTH_SHORT).show();
}
} }

View File

@@ -192,4 +192,13 @@ public class BluetoothPairingDetailTest {
// Verify that clean up only happen once at initialization // Verify that clean up only happen once at initialization
verify(mAvailableDevicesCategory, times(1)).removeAll(); verify(mAvailableDevicesCategory, times(1)).removeAll();
} }
@Test
public void onBluetoothStateChanged_whenTurnedOnBTShowToast() {
doNothing().when(mFragment).updateContent(anyInt());
mFragment.onBluetoothStateChanged(BluetoothAdapter.STATE_ON);
verify(mFragment).showBluetoothTurnedOnToast();
}
} }