public FetchAndLockHandlerImpl() { this.condition = new SingleConsumerCondition(handlerThread); }
@Test(timeout=10000) public void shouldNotBlockIfSignalAvailableDifferentThread() throws InterruptedException { final SingleConsumerCondition condition = new SingleConsumerCondition(Thread.currentThread()); Thread consumer = new Thread() { @Override public void run() { condition.signal(); } }; consumer.start(); consumer.join(); // then condition.await(100000); }
@Test public void cannotCreateWithNull() { try { new SingleConsumerCondition(null); Assert.fail("expected exception"); } catch (IllegalArgumentException e) { // expected } }
@Test public void cannotAwaitFromDifferentThread() { // given SingleConsumerCondition condition = new SingleConsumerCondition(new Thread()); // when then try { condition.await(0); Assert.fail("expected exception"); } catch (RuntimeException e) { // expected } }
@Test(timeout=10000) public void shouldNotBlockIfSignalAvailable() { SingleConsumerCondition condition = new SingleConsumerCondition(Thread.currentThread()); // given condition.signal(); // then condition.await(100000); }
public FetchAndLockHandlerImpl() { this.condition = new SingleConsumerCondition(handlerThread); }
@Test(timeout=10000) public void shouldNotBlockIfSignalAvailableDifferentThread() throws InterruptedException { final SingleConsumerCondition condition = new SingleConsumerCondition(Thread.currentThread()); Thread consumer = new Thread() { @Override public void run() { condition.signal(); } }; consumer.start(); consumer.join(); // then condition.await(100000); }
@Test public void cannotCreateWithNull() { try { new SingleConsumerCondition(null); Assert.fail("expected exception"); } catch (IllegalArgumentException e) { // expected } }
@Test public void cannotAwaitFromDifferentThread() { // given SingleConsumerCondition condition = new SingleConsumerCondition(new Thread()); // when then try { condition.await(0); Assert.fail("expected exception"); } catch (RuntimeException e) { // expected } }
@Test(timeout=10000) public void shouldNotBlockIfSignalAvailable() { SingleConsumerCondition condition = new SingleConsumerCondition(Thread.currentThread()); // given condition.signal(); // then condition.await(100000); }