Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8443b387 authored by Chienyuan's avatar Chienyuan
Browse files

Add test for address consolidate callback

Tag: #refactor
Bug: 197044261
Test: atest BluetoothInstrumentationTests:AdapterServiceTest#testAddressConsolidation
Change-Id: I4d981653ef3609534f2e49f0968f3f84b82999d2
parent 0ade88c6
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -3740,6 +3740,11 @@ public class AdapterService extends Service {
        return getResources().getInteger(R.integer.config_bluetooth_operating_voltage_mv) / 1000.0;
    }

    @VisibleForTesting
    protected RemoteDevices getRemoteDevices() {
        return mRemoteDevices;
    }

    @Override
    protected void dump(FileDescriptor fd, PrintWriter writer, String[] args) {
        if (args.length == 0) {
+19 −0
Original line number Diff line number Diff line
@@ -81,6 +81,8 @@ import javax.crypto.spec.SecretKeySpec;
@RunWith(AndroidJUnit4.class)
public class AdapterServiceTest {
    private static final String TAG = AdapterServiceTest.class.getSimpleName();
    private static final String TEST_BT_ADDR_1 = "00:11:22:33:44:55";
    private static final String TEST_BT_ADDR_2 = "00:11:22:33:44:66";

    private AdapterService mAdapterService;
    private AdapterService.AdapterServiceBinder mServiceBinder;
@@ -754,6 +756,23 @@ public class AdapterServiceTest {
                obfuscatedAddress1));
    }

    @Test
    public void testAddressConsolidation() {
        // Create device properties
        RemoteDevices remoteDevices = mAdapterService.getRemoteDevices();
        remoteDevices.addDeviceProperties(Utils.getBytesFromAddress((TEST_BT_ADDR_1)));
        String identityAddress = mAdapterService.getIdentityAddress(TEST_BT_ADDR_1);
        Assert.assertEquals(identityAddress, TEST_BT_ADDR_1);

        // Trigger address consolidate callback
        remoteDevices.addressConsolidateCallback(Utils.getBytesFromAddress(TEST_BT_ADDR_1),
                Utils.getBytesFromAddress(TEST_BT_ADDR_2));

        // Verify we can get correct identity address
        identityAddress = mAdapterService.getIdentityAddress(TEST_BT_ADDR_1);
        Assert.assertEquals(identityAddress, TEST_BT_ADDR_2);
    }

    private static byte[] getMetricsSalt(HashMap<String, HashMap<String, String>> adapterConfig) {
        HashMap<String, String> metricsSection = adapterConfig.get("Metrics");
        if (metricsSection == null) {