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

Commit 997dbef4 authored by Etan Cohen's avatar Etan Cohen
Browse files

[AWARE] Check dynamic location permission

Add check for dynamic location permission.

Bug: 70499417
Test: unit tests, integration tests, CtsVerifier
Change-Id: I293f21082c5a3d77362fb3d1db727130d7e41ec5
parent e1080cfc
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -42,9 +42,9 @@ interface IWifiAwareManager
            in ConfigRequest configRequest, boolean notifyOnIdentityChanged);
            in ConfigRequest configRequest, boolean notifyOnIdentityChanged);
    void disconnect(int clientId, in IBinder binder);
    void disconnect(int clientId, in IBinder binder);


    void publish(int clientId, in PublishConfig publishConfig,
    void publish(in String callingPackage, int clientId, in PublishConfig publishConfig,
            in IWifiAwareDiscoverySessionCallback callback);
            in IWifiAwareDiscoverySessionCallback callback);
    void subscribe(int clientId, in SubscribeConfig subscribeConfig,
    void subscribe(in String callingPackage, int clientId, in SubscribeConfig subscribeConfig,
            in IWifiAwareDiscoverySessionCallback callback);
            in IWifiAwareDiscoverySessionCallback callback);


    // session API
    // session API
+2 −2
Original line number Original line Diff line number Diff line
@@ -301,7 +301,7 @@ public class WifiAwareManager {
        if (VDBG) Log.v(TAG, "publish(): clientId=" + clientId + ", config=" + publishConfig);
        if (VDBG) Log.v(TAG, "publish(): clientId=" + clientId + ", config=" + publishConfig);


        try {
        try {
            mService.publish(clientId, publishConfig,
            mService.publish(mContext.getOpPackageName(), clientId, publishConfig,
                    new WifiAwareDiscoverySessionCallbackProxy(this, looper, true, callback,
                    new WifiAwareDiscoverySessionCallbackProxy(this, looper, true, callback,
                            clientId));
                            clientId));
        } catch (RemoteException e) {
        } catch (RemoteException e) {
@@ -334,7 +334,7 @@ public class WifiAwareManager {
        }
        }


        try {
        try {
            mService.subscribe(clientId, subscribeConfig,
            mService.subscribe(mContext.getOpPackageName(), clientId, subscribeConfig,
                    new WifiAwareDiscoverySessionCallbackProxy(this, looper, false, callback,
                    new WifiAwareDiscoverySessionCallbackProxy(this, looper, false, callback,
                            clientId));
                            clientId));
        } catch (RemoteException e) {
        } catch (RemoteException e) {
+8 −8
Original line number Original line Diff line number Diff line
@@ -145,7 +145,7 @@ public class WifiAwareManagerTest {
        // (2) publish - should succeed
        // (2) publish - should succeed
        PublishConfig publishConfig = new PublishConfig.Builder().build();
        PublishConfig publishConfig = new PublishConfig.Builder().build();
        session.publish(publishConfig, mockSessionCallback, mMockLooperHandler);
        session.publish(publishConfig, mockSessionCallback, mMockLooperHandler);
        inOrder.verify(mockAwareService).publish(eq(clientId), eq(publishConfig), any());
        inOrder.verify(mockAwareService).publish(any(), eq(clientId), eq(publishConfig), any());


        // (3) disconnect
        // (3) disconnect
        session.close();
        session.close();
@@ -197,7 +197,7 @@ public class WifiAwareManagerTest {
        // (4) subscribe: should succeed
        // (4) subscribe: should succeed
        SubscribeConfig subscribeConfig = new SubscribeConfig.Builder().build();
        SubscribeConfig subscribeConfig = new SubscribeConfig.Builder().build();
        session.subscribe(subscribeConfig, mockSessionCallback, mMockLooperHandler);
        session.subscribe(subscribeConfig, mockSessionCallback, mMockLooperHandler);
        inOrder.verify(mockAwareService).subscribe(eq(clientId), eq(subscribeConfig), any());
        inOrder.verify(mockAwareService).subscribe(any(), eq(clientId), eq(subscribeConfig), any());


        verifyNoMoreInteractions(mockCallback, mockSessionCallback, mockAwareService);
        verifyNoMoreInteractions(mockCallback, mockSessionCallback, mockAwareService);
    }
    }
@@ -280,7 +280,7 @@ public class WifiAwareManagerTest {


        // (1) publish
        // (1) publish
        session.publish(publishConfig, mockSessionCallback, mMockLooperHandler);
        session.publish(publishConfig, mockSessionCallback, mMockLooperHandler);
        inOrder.verify(mockAwareService).publish(eq(clientId), eq(publishConfig),
        inOrder.verify(mockAwareService).publish(any(), eq(clientId), eq(publishConfig),
                sessionProxyCallback.capture());
                sessionProxyCallback.capture());


        // (2) publish session created
        // (2) publish session created
@@ -372,7 +372,7 @@ public class WifiAwareManagerTest {


        // (2) publish: successfully - then terminated
        // (2) publish: successfully - then terminated
        session.publish(publishConfig, mockSessionCallback, mMockLooperHandler);
        session.publish(publishConfig, mockSessionCallback, mMockLooperHandler);
        inOrder.verify(mockAwareService).publish(eq(clientId), eq(publishConfig),
        inOrder.verify(mockAwareService).publish(any(), eq(clientId), eq(publishConfig),
                sessionProxyCallback.capture());
                sessionProxyCallback.capture());
        sessionProxyCallback.getValue().onSessionStarted(sessionId);
        sessionProxyCallback.getValue().onSessionStarted(sessionId);
        sessionProxyCallback.getValue().onSessionTerminated(0);
        sessionProxyCallback.getValue().onSessionTerminated(0);
@@ -429,7 +429,7 @@ public class WifiAwareManagerTest {


        // (1) subscribe
        // (1) subscribe
        session.subscribe(subscribeConfig, mockSessionCallback, mMockLooperHandler);
        session.subscribe(subscribeConfig, mockSessionCallback, mMockLooperHandler);
        inOrder.verify(mockAwareService).subscribe(eq(clientId), eq(subscribeConfig),
        inOrder.verify(mockAwareService).subscribe(any(), eq(clientId), eq(subscribeConfig),
                sessionProxyCallback.capture());
                sessionProxyCallback.capture());


        // (2) subscribe session created
        // (2) subscribe session created
@@ -514,7 +514,7 @@ public class WifiAwareManagerTest {


        // (2) subscribe: successfully - then terminated
        // (2) subscribe: successfully - then terminated
        session.subscribe(subscribeConfig, mockSessionCallback, mMockLooperHandler);
        session.subscribe(subscribeConfig, mockSessionCallback, mMockLooperHandler);
        inOrder.verify(mockAwareService).subscribe(eq(clientId), eq(subscribeConfig),
        inOrder.verify(mockAwareService).subscribe(any(), eq(clientId), eq(subscribeConfig),
                sessionProxyCallback.capture());
                sessionProxyCallback.capture());
        sessionProxyCallback.getValue().onSessionStarted(sessionId);
        sessionProxyCallback.getValue().onSessionStarted(sessionId);
        sessionProxyCallback.getValue().onSessionTerminated(0);
        sessionProxyCallback.getValue().onSessionTerminated(0);
@@ -912,7 +912,7 @@ public class WifiAwareManagerTest {


        // (2) publish successfully
        // (2) publish successfully
        session.publish(publishConfig, mockSessionCallback, mMockLooperHandler);
        session.publish(publishConfig, mockSessionCallback, mMockLooperHandler);
        inOrder.verify(mockAwareService).publish(eq(clientId), eq(publishConfig),
        inOrder.verify(mockAwareService).publish(any(), eq(clientId), eq(publishConfig),
                sessionProxyCallback.capture());
                sessionProxyCallback.capture());
        sessionProxyCallback.getValue().onSessionStarted(sessionId);
        sessionProxyCallback.getValue().onSessionStarted(sessionId);
        mMockLooper.dispatchAll();
        mMockLooper.dispatchAll();
@@ -1089,7 +1089,7 @@ public class WifiAwareManagerTest {


        // (2) publish successfully
        // (2) publish successfully
        session.publish(publishConfig, mockSessionCallback, mMockLooperHandler);
        session.publish(publishConfig, mockSessionCallback, mMockLooperHandler);
        inOrder.verify(mockAwareService).publish(eq(clientId), eq(publishConfig),
        inOrder.verify(mockAwareService).publish(any(), eq(clientId), eq(publishConfig),
                sessionProxyCallback.capture());
                sessionProxyCallback.capture());
        sessionProxyCallback.getValue().onSessionStarted(sessionId);
        sessionProxyCallback.getValue().onSessionStarted(sessionId);
        mMockLooper.dispatchAll();
        mMockLooper.dispatchAll();