private void testUncompletedOtherwiseApplyFunction(AsyncResult<String> res) { AsyncResult<String> ar1 = res.otherwise(Throwable::getMessage); assertFalse(ar1.succeeded()); assertFalse(ar1.failed()); assertNull(ar1.result()); assertNull(ar1.cause()); }
@Test public void testUncompletedAsyncResultMap() { Future<String> f = Future.future(); AsyncResult<String> res = asyncResult(f); AsyncResult<Integer> map1 = res.map(String::length); AsyncResult<Integer> map2 = res.map(17); assertNull(map1.result()); assertNull(map1.cause()); assertNull(map2.result()); assertNull(map2.cause()); }
private void testUncompletedAsyncResultOtherwise(AsyncResult<String> res) { AsyncResult<String> ar1 = res.otherwise("something-else"); assertFalse(ar1.succeeded()); assertFalse(ar1.failed()); assertNull(ar1.result()); assertNull(ar1.cause()); }
@Test public void testAsyncResultMapEmpty() { Future<String> f = Future.future(); AsyncResult<String> res = asyncResult(f); AsyncResult<Integer> map = res.mapEmpty(); f.complete("foobar"); assertNull(null, map.result()); assertNull(map.cause()); }
private void testSucceededOtherwiseApplyFunction(AsyncResult<String> res, Future<String> f) { AsyncResult<String> ar = res.otherwise("whatever"); f.complete("foobar"); assertTrue(ar.succeeded()); assertFalse(ar.failed()); assertEquals("foobar", ar.result()); assertNull(ar.cause()); }
private void testFailedOtherwiseApplyFunction(AsyncResult<String> res, Future<String> f) { AsyncResult<String> map1 = res.otherwise(Throwable::getMessage); Throwable cause = new Throwable("the-failure"); f.fail(cause); assertTrue(map1.succeeded()); assertFalse(map1.failed()); assertEquals("the-failure", map1.result()); assertNull(map1.cause()); }
@Test public void testReleaseHandlerAfterCompletion() throws Exception { Future<String> f = Future.future(); Field handlerField = f.getClass().getDeclaredField("handler"); handlerField.setAccessible(true); f.setHandler(ar -> {}); f.complete(); assertNull(handlerField.get(f)); f.setHandler(ar -> {}); assertNull(handlerField.get(f)); f = Future.future(); f.setHandler(ar -> {}); f.fail("abc"); assertNull(handlerField.get(f)); f.setHandler(ar -> {}); assertNull(handlerField.get(f)); }
private void testFailedOtherwise(AsyncResult<String> res, Future<String> f) { AsyncResult<String> map1 = res.otherwise("something-else"); Throwable cause = new Throwable("the-failure"); f.fail(cause); assertTrue(map1.succeeded()); assertFalse(map1.failed()); assertEquals("something-else", map1.result()); assertNull(map1.cause()); }
private void testOtherwiseEmpty(AsyncResult<String> res, Future<String> f) { AsyncResult<String> otherwise = res.otherwiseEmpty(); Throwable cause = new Throwable("the-failure"); f.fail(cause); assertTrue(otherwise.succeeded()); assertFalse(otherwise.failed()); assertEquals(null, otherwise.result()); assertNull(otherwise.cause()); }
private void testSucceededOtherwise(AsyncResult<String> res, Future<String> f) { AsyncResult<String> ar = res.otherwise(Throwable::getMessage); f.complete("foobar"); assertTrue(ar.succeeded()); assertFalse(ar.failed()); assertEquals("foobar", ar.result()); assertNull(ar.cause()); }
@Test public void testSucceededAsyncResultMap() { Future<String> f = Future.future(); AsyncResult<String> res = asyncResult(f); AsyncResult<Integer> map1 = res.map(String::length); AsyncResult<Integer> map2 = res.map(17); f.complete("foobar"); assertEquals(6, (int)map1.result()); assertNull(map1.cause()); assertEquals(17, (int)map2.result()); assertNull(map2.cause()); }
@Test public void testFailedAsyncResultMap() { Future<String> f = Future.future(); AsyncResult<String> res = asyncResult(f); AsyncResult<Integer> map1 = res.map(String::length); AsyncResult<Integer> map2 = res.map(17); Throwable cause = new Throwable(); f.fail(cause); assertNull(map1.result()); assertSame(cause, map1.cause()); assertNull(map2.result()); assertSame(cause, map2.cause()); }
@Test public void testCreateFailedWithNullFailure() { Future<String> future = Future.failedFuture((Throwable)null); Checker<String> checker = new Checker<>(future); NoStackTraceThrowable failure = (NoStackTraceThrowable) checker.assertFailed(); assertNull(failure.getMessage()); }
@Test public void testFailureFutureWithNullFailure() { Future<String> future = Future.future(); future.fail((Throwable)null); Checker<String> checker = new Checker<>(future); NoStackTraceThrowable failure = (NoStackTraceThrowable) checker.assertFailed(); assertNull(failure.getMessage()); }
@Test public void testStateAfterCompletion() { Object foo = new Object(); Future<Object> future = Future.succeededFuture(foo); assertTrue(future.succeeded()); assertFalse(future.failed()); assertTrue(future.isComplete()); assertEquals(foo, future.result()); assertNull(future.cause()); Exception cause = new Exception(); future = Future.failedFuture(cause); assertFalse(future.succeeded()); assertTrue(future.failed()); assertTrue(future.isComplete()); assertNull(future.result()); assertEquals(cause, future.cause()); }
private void testFailedOtherwise(AsyncResult<String> res, Future<String> f) { AsyncResult<String> map1 = res.otherwise("something-else"); Throwable cause = new Throwable("the-failure"); f.fail(cause); assertTrue(map1.succeeded()); assertFalse(map1.failed()); assertEquals("something-else", map1.result()); assertNull(map1.cause()); }
private void testFailedOtherwiseApplyFunction(AsyncResult<String> res, Future<String> f) { AsyncResult<String> map1 = res.otherwise(Throwable::getMessage); Throwable cause = new Throwable("the-failure"); f.fail(cause); assertTrue(map1.succeeded()); assertFalse(map1.failed()); assertEquals("the-failure", map1.result()); assertNull(map1.cause()); }
private void testSucceededOtherwise(AsyncResult<String> res, Future<String> f) { AsyncResult<String> ar = res.otherwise(Throwable::getMessage); f.complete("foobar"); assertTrue(ar.succeeded()); assertFalse(ar.failed()); assertEquals("foobar", ar.result()); assertNull(ar.cause()); }
@Test public void testSucceededAsyncResultMap() { Future<String> f = Future.future(); AsyncResult<String> res = asyncResult(f); AsyncResult<Integer> map1 = res.map(String::length); AsyncResult<Integer> map2 = res.map(17); f.complete("foobar"); assertEquals(6, (int)map1.result()); assertNull(map1.cause()); assertEquals(17, (int)map2.result()); assertNull(map2.cause()); }
@Test public void testCreateFailedWithNullFailure() { Future<String> future = Future.failedFuture((Throwable)null); Checker<String> checker = new Checker<>(future); NoStackTraceThrowable failure = (NoStackTraceThrowable) checker.assertFailed(); assertNull(failure.getMessage()); }