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

Commit 83eec7ff authored by Hyundo Moon's avatar Hyundo Moon
Browse files

Provide LocationManager in tests that start GattService

Bug: 289600846
Test: atest GoogleBluetoothInstrumentationTests
      Checked that there were no case where the manager becomes null.
Change-Id: Ibcd3adce92d2ec83b9461b1763d3c382b3d858f0
parent 6507424a
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -20,7 +20,9 @@ import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.*;

import android.bluetooth.BluetoothAdapter;
import android.content.Context;
import android.content.Intent;
import android.location.LocationManager;
import android.os.Looper;

import androidx.test.InstrumentationRegistry;
@@ -57,6 +59,7 @@ public class ProfileServiceTest {
    @Rule public final ServiceTestRule mServiceTestRule = new ServiceTestRule();
    @Mock private AdapterService mMockAdapterService;
    @Mock private DatabaseManager mDatabaseManager;
    @Mock private LocationManager mLocationManager;

    private Class[] mProfiles;
    ConcurrentHashMap<String, Boolean> mStartedProfileMap = new ConcurrentHashMap();
@@ -115,6 +118,10 @@ public class ProfileServiceTest {
                return mStartedProfileMap.get((String) args[0]);
            }
        });
        when(mMockAdapterService.getSystemService(Context.LOCATION_SERVICE))
                .thenReturn(mLocationManager);
        when(mMockAdapterService.getSystemServiceName(LocationManager.class))
                .thenReturn(Context.LOCATION_SERVICE);

        mProfiles = Config.getSupportedProfiles();

+9 −1
Original line number Diff line number Diff line
@@ -20,9 +20,12 @@ import static com.google.common.truth.Truth.assertThat;

import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.when;

import android.bluetooth.le.ScanFilter;
import android.bluetooth.le.ScanSettings;
import android.content.Context;
import android.location.LocationManager;
import android.os.WorkSource;

import androidx.test.filters.SmallTest;
@@ -31,7 +34,6 @@ import androidx.test.runner.AndroidJUnit4;

import com.android.bluetooth.TestUtils;
import com.android.bluetooth.btservice.AdapterService;
import com.android.bluetooth.btservice.BluetoothAdapterProxy;

import org.junit.After;
import org.junit.Before;
@@ -62,12 +64,18 @@ public class AppScanStatsTest {
    @Mock
    private AdapterService mAdapterService;

    @Mock private LocationManager mLocationManager;

    @Before
    public void setUp() throws Exception {
        MockitoAnnotations.initMocks(this);

        TestUtils.setAdapterService(mAdapterService);
        doReturn(true).when(mAdapterService).isStartedProfile(anyString());
        when(mAdapterService.getSystemService(Context.LOCATION_SERVICE))
                .thenReturn(mLocationManager);
        when(mAdapterService.getSystemServiceName(LocationManager.class))
                .thenReturn(Context.LOCATION_SERVICE);

        TestUtils.startService(mServiceRule, GattService.class);
        mService = GattService.getGattService();
+9 −0
Original line number Diff line number Diff line
@@ -21,10 +21,13 @@ import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import android.bluetooth.le.AdvertiseData;
import android.bluetooth.le.AdvertisingSetParameters;
import android.bluetooth.le.PeriodicAdvertisingParameters;
import android.content.Context;
import android.location.LocationManager;
import android.os.Binder;

import androidx.test.filters.SmallTest;
@@ -61,6 +64,8 @@ public class ContextMapTest {
    @Mock
    private AdapterService mAdapterService;

    @Mock private LocationManager mLocationManager;

    @Mock
    private AppAdvertiseStats appAdvertiseStats;

@@ -74,6 +79,10 @@ public class ContextMapTest {

        TestUtils.setAdapterService(mAdapterService);
        doReturn(true).when(mAdapterService).isStartedProfile(anyString());
        when(mAdapterService.getSystemService(Context.LOCATION_SERVICE))
                .thenReturn(mLocationManager);
        when(mAdapterService.getSystemServiceName(LocationManager.class))
                .thenReturn(Context.LOCATION_SERVICE);

        TestUtils.startService(mServiceRule, GattService.class);
        mService = GattService.getGattService();
+10 −0
Original line number Diff line number Diff line
@@ -45,6 +45,7 @@ import android.bluetooth.le.ScanSettings;
import android.content.AttributionSource;
import android.content.Context;
import android.content.res.Resources;
import android.location.LocationManager;
import android.os.Binder;
import android.os.ParcelUuid;
import android.os.RemoteException;
@@ -100,6 +101,7 @@ public class GattServiceTest {
    @Mock private Set<String> mReliableQueue;
    @Mock private GattService.ServerMap mServerMap;
    @Mock private DistanceMeasurementManager mDistanceMeasurementManager;
    @Mock private LocationManager mLocationManager;

    @Rule public final ServiceTestRule mServiceRule = new ServiceTestRule();

@@ -134,6 +136,10 @@ public class GattServiceTest {
        when(mAdapterService.getSharedPreferences(anyString(), anyInt()))
                .thenReturn(InstrumentationRegistry.getTargetContext()
                        .getSharedPreferences("GattServiceTestPrefs", Context.MODE_PRIVATE));
        when(mAdapterService.getSystemService(Context.LOCATION_SERVICE))
                .thenReturn(mLocationManager);
        when(mAdapterService.getSystemServiceName(LocationManager.class))
                .thenReturn(Context.LOCATION_SERVICE);

        mBtCompanionManager = new CompanionManager(mAdapterService, null);
        doReturn(mBtCompanionManager).when(mAdapterService).getCompanionManager();
@@ -179,6 +185,10 @@ public class GattServiceTest {
            reset(mAdapterService);
            TestUtils.setAdapterService(mAdapterService);
            doReturn(true).when(mAdapterService).isStartedProfile(anyString());
            when(mAdapterService.getSystemService(Context.LOCATION_SERVICE))
                    .thenReturn(mLocationManager);
            when(mAdapterService.getSystemServiceName(LocationManager.class))
                    .thenReturn(Context.LOCATION_SERVICE);
            TestUtils.startService(mServiceRule, GattService.class);
            mService = GattService.getGattService();
            Assert.assertNotNull(mService);