@Test public void testSetGet() { long seed = System.currentTimeMillis() + System.nanoTime(); Map<Integer, Integer> values = new HashMap<Integer, Integer>(); Random r = new Random(seed); for (int i = 0; i < 30000; i++) { int val = r.nextInt(); int addr = r.nextInt(Machine.ADDRESS_SPACE_SIZE); m.set(addr, val); values.put(addr, val); } r = new Random(seed); for (int i = 0; i < 30000; i++) { r.nextInt(); int addr = r.nextInt(Machine.ADDRESS_SPACE_SIZE); assertEquals((int) values.get(addr), m.get(addr)); } for (int i = 0; i < 30000; i++) { int addr = r.nextInt(Machine.ADDRESS_SPACE_SIZE); if (values.containsKey(addr)) assertEquals((int) values.get(addr), m.get(addr)); else assertEquals(0, m.get(addr)); } }
@Test public void testInitiallyBlank() { Random r = new Random(); for (int i = 0; i < 1000; i++) { int addr = r.nextInt(Machine.ADDRESS_SPACE_SIZE); assertEquals(0, m.get(addr)); } }