diff options
author | Kjetil Ørbekk <kjetil.orbekk@gmail.com> | 2012-05-02 12:52:21 +0200 |
---|---|---|
committer | Kjetil Ørbekk <kjetil.orbekk@gmail.com> | 2012-05-02 12:52:21 +0200 |
commit | 15f0b88446699bdeaffaf20c42bb31950b50aacc (patch) | |
tree | e5eeb9fe084cef09db84b27c1fda8da27ab0d0d6 /same/src/test/java/com | |
parent | a9a93033637ea3e5ce00283213422d464b09a183 (diff) |
Add CyclicCountDownLatch.
(You may not want to use this.)
Diffstat (limited to 'same/src/test/java/com')
-rw-r--r-- | same/src/test/java/com/orbekk/util/CyclicCountDownLatchTest.java | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/same/src/test/java/com/orbekk/util/CyclicCountDownLatchTest.java b/same/src/test/java/com/orbekk/util/CyclicCountDownLatchTest.java new file mode 100644 index 0000000..769b7e5 --- /dev/null +++ b/same/src/test/java/com/orbekk/util/CyclicCountDownLatchTest.java @@ -0,0 +1,35 @@ +package com.orbekk.util; + +import static org.junit.Assert.assertThat; +import static org.hamcrest.Matchers.*; + +import org.junit.Test; + +public class CyclicCountDownLatchTest { + CyclicCountDownLatch latch = new CyclicCountDownLatch(1); + + @Test public void initialCount() { + assertThat(latch.getCount(), is(1)); + } + + @Test public void releasesCorrectly() throws Exception { + latch.countDown(); + assertThat(latch.getCount(), is(0)); + latch.await(); + } + + @Test public void testCycle() throws Exception { + latch.countDown(); + latch.await(); + assertThat(latch.getCount(), is(1)); + latch.countDown(); + latch.await(); + } + + @Test public void notAccumulative() throws Exception { + latch.countDown(); + latch.countDown(); + latch.await(); + assertThat(latch.getCount(), is(1)); + } +} |