MultiplePermissionListenerThreadDecorator implements MultiplePermissionsListener { @Override public void onPermissionsChecked(final MultiplePermissionsReport report) { thread.execute(new Runnable() { @Override public void run() { listener.onPermissionsChecked(report); } }); } MultiplePermissionListenerThreadDecorator(MultiplePermissionsListener listener,
      Thread thread); @Override void onPermissionsChecked(final MultiplePermissionsReport report); @Override void onPermissionRationaleShouldBeShown(
      final List<PermissionRequest> permissions, final PermissionToken token);  }
@Test public void onPermissionCheckedThenListenerIsDecorated() { decorator.onPermissionsChecked(null); verify(listener).onPermissionsChecked(null); assertTrue(thread.decorated); }