There is a broadcast receiver responsible for turning the bluetooth on / off. How can I write a test for it? And what tests can I write for it? And the receiver itself

public class BluetoothAdapterStateReceiver extends BroadcastReceiver{ interface ChangeState{ void enableAdapter(); void disableAdapter(); } private static ChangeState mChangeState; @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); // When discovery finds a device if (action.equals(mBluetoothAdapter.ACTION_STATE_CHANGED)) { final int state = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, mBluetoothAdapter.ERROR); switch(state){ case BluetoothAdapter.STATE_OFF: mChangeState.disableAdapter(); Log.e("Core2", "STATE_OFF"); break; case BluetoothAdapter.STATE_TURNING_OFF: Log.e("Core2", "STATE_TURNING_OFF"); break; case BluetoothAdapter.STATE_ON: mChangeState.enableAdapter(); Log.e("Core2", "STATE_ON"); break; case BluetoothAdapter.STATE_TURNING_ON: Log.e("Core2", "STATE_TURNING_ON"); break; case BluetoothAdapter.ERROR: break; case BluetoothAdapter.SCAN_MODE_NONE: break; } } } public void registerCallback(ChangeState changeState){ mChangeState=changeState; } } 

preferably a live example with explanations as I began to study testing too

    0