3 import org.junit.After;
4 import org.junit.AfterClass;
5 import org.junit.Before;
6 import org.junit.BeforeClass;
8 import static org.junit.Assert.*;
10 public class MutexTest {
12 private static final Mutex.Privileged PRIVILEGED = new Mutex.Privileged();
13 public static final Mutex MUTEX = new Mutex(PRIVILEGED);
20 public static void setUpClass() throws Exception {
24 public static void tearDownClass() throws Exception {
32 public void tearDown() {
36 * Test of readAccess method, of class Mutex.
39 public void readAccess() {
40 class R implements Runnable {
48 Mutex instance = new Mutex();
49 instance.readAccess(r);
50 assertEquals("One call to runnable", 1, r.cnt);
54 public void usePrivileged() {
55 Mutex.Privileged lock = new Mutex.Privileged();
56 Mutex mutex = new Mutex(lock);
58 // BEGIN: mutex.privileged
59 lock.enterReadAccess();
63 lock.exitReadAccess();
65 // END: mutex.privileged