1 package net.sf.openrocket.util;
3 import static org.junit.Assert.*;
7 public class UniqueIDTest {
10 public void integerTest() {
12 int n = UniqueID.next();
14 assertEquals(n+1, UniqueID.next());
15 assertEquals(n+2, UniqueID.next());
16 assertEquals(n+3, UniqueID.next());
22 public void stringTest() {
23 String id = UniqueID.uuid();
25 assertNotSame(id, UniqueID.uuid());
26 assertNotSame(id, UniqueID.uuid());
30 public void hashedTest() {
31 String id = UniqueID.generateHashedID();
34 boolean matchhigh = false;
35 boolean matchlow = false;
36 for (int i=0; i<100; i++) {
37 String newid = UniqueID.generateHashedID();
39 assertNotSame(id, newid);
40 assertTrue(newid.matches("^[0-9a-fA-F]{32}$"));
42 // Check that both high and low values occur
43 matchhigh = matchhigh || newid.matches("^([0-9a-fA-F][0-9a-fA-F])*[A-F].*");
44 matchlow = matchlow || newid.matches("^([0-9a-fA-F][0-9a-fA-F])*[0-4].*");
46 assertTrue(matchhigh);