public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { emitEvent(Event.REQUEST_PERMISSIONS_RESULT, RequestPermissionsResult.create(requestCode, permissions, grantResults)); }
@Test public void requestPermissionsResultListener() { Listener<RequestPermissionsResult> listener = mock(Listener.class); emitter.addListener(Event.REQUEST_PERMISSIONS_RESULT, listener); int requestCode = 1; String[] permissions = new String[0]; int[] grantResults = new int[0]; emitter.onRequestPermissionsResult(requestCode, permissions, grantResults); verify(listener).call(RequestPermissionsResult.create(requestCode, permissions, grantResults)); emitter.removeListener(listener); emitter.onRequestPermissionsResult(requestCode, permissions, grantResults); verifyNoMoreInteractions(listener); }
@Test public void requestPermissionsResultListener() { Listener<RequestPermissionsResult> listener = mock(Listener.class); emitter.addListener(Event.REQUEST_PERMISSIONS_RESULT, listener); int requestCode = 1; String[] permissions = new String[0]; int[] grantResults = new int[0]; emitter.onRequestPermissionsResult(requestCode, permissions, grantResults); verify(listener).call(RequestPermissionsResult.create(requestCode, permissions, grantResults)); emitter.removeListener(listener); emitter.onRequestPermissionsResult(requestCode, permissions, grantResults); verifyNoMoreInteractions(listener); }
@Test public void observeRequestPermissionsResult() { TestObserver<RequestPermissionsResult> testObserver = RxNavi.observe(emitter, Event.REQUEST_PERMISSIONS_RESULT).test(); testObserver.assertNoValues(); int requestCode = 1; String[] permissions = new String[0]; int[] grantResults = new int[0]; emitter.onRequestPermissionsResult(requestCode, permissions, grantResults); testObserver.dispose(); emitter.onRequestPermissionsResult(requestCode, permissions, grantResults); testObserver.assertValue( RequestPermissionsResult.create(requestCode, permissions, grantResults)); testObserver.assertNotTerminated(); } }
@Test public void observeRequestPermissionsResult() { TestObserver<RequestPermissionsResult> testObserver = RxNavi.observe(emitter, Event.REQUEST_PERMISSIONS_RESULT).test(); testObserver.assertNoValues(); int requestCode = 1; String[] permissions = new String[0]; int[] grantResults = new int[0]; emitter.onRequestPermissionsResult(requestCode, permissions, grantResults); testObserver.dispose(); emitter.onRequestPermissionsResult(requestCode, permissions, grantResults); testObserver.assertValue( RequestPermissionsResult.create(requestCode, permissions, grantResults)); testObserver.assertNotTerminated(); } }