Fix the logic error on PBAP permission assignment

-add test case

Bug: 114808220
Test: make -j42 RunSettingsRoboTests
Change-Id: Id77ade12c28e31a21c1c7a5dcb28906112d3465b
diff --git a/src/com/android/settings/bluetooth/BluetoothPairingController.java b/src/com/android/settings/bluetooth/BluetoothPairingController.java
index c39f1d9..94bdfe8 100644
--- a/src/com/android/settings/bluetooth/BluetoothPairingController.java
+++ b/src/com/android/settings/bluetooth/BluetoothPairingController.java
@@ -54,8 +54,7 @@
 
     // Bluetooth dependencies for the connection we are trying to establish
     private LocalBluetoothManager mBluetoothManager;
-    @VisibleForTesting
-    BluetoothDevice mDevice;
+    private BluetoothDevice mDevice;
     @VisibleForTesting
     int mType;
     private String mUserInput;
@@ -189,16 +188,16 @@
      *
      */
      public void  setContactSharingState() {
-        if ((mDevice.getPhonebookAccessPermission() != BluetoothDevice.ACCESS_ALLOWED)
-                && (mDevice.getPhonebookAccessPermission() != BluetoothDevice.ACCESS_REJECTED)) {
-                 if (mDevice.getBluetoothClass().getDeviceClass()
-                        == BluetoothClass.Device.AUDIO_VIDEO_HANDSFREE) {
-                    onCheckedChanged(null, true);
-            } else {
-                onCheckedChanged(null, false);
-            }
-        }
-    }
+         final int permission = mDevice.getPhonebookAccessPermission();
+         if (permission == BluetoothDevice.ACCESS_ALLOWED
+                 || (permission == BluetoothDevice.ACCESS_UNKNOWN && mDevice.getBluetoothClass().
+                        getDeviceClass() == BluetoothClass.Device.AUDIO_VIDEO_HANDSFREE)) {
+             onCheckedChanged(null, true);
+         } else {
+             onCheckedChanged(null, false);
+         }
+
+     }
 
     /**
      * A method for querying if the provided editable is a valid passkey/pin format for this device.