1 7 22 23 package de.schlichtherle.crypto.generators; 24 25 import de.schlichtherle.util.Arrays; 26 import de.schlichtherle.util.zip.ZipTestBase; 27 import java.util.logging.Logger ; 28 29 import junit.framework.*; 30 31 import java.security.SecureRandom ; 32 import java.util.Random ; 33 34 import org.bouncycastle.crypto.Digest; 35 import org.bouncycastle.crypto.digests.SHA256Digest; 36 37 41 public class DigestRandomTest extends TestCase { 42 43 private static final Logger logger 44 = Logger.getLogger(DigestRandomTest.class.getName()); 45 46 private Random rnd1; 47 private Random rnd2; 48 49 public static Test suite() { 50 TestSuite suite = new TestSuite(DigestRandomTest.class); 51 52 return suite; 53 } 54 55 public DigestRandomTest(String testName) { 56 super(testName); 57 } 58 59 protected void setUp() throws Exception { 60 rnd1 = new DigestRandom(new SHA256Digest()); 61 rnd2 = new DigestRandom(new SHA256Digest()); 62 } 65 66 protected void tearDown() throws Exception { 67 rnd1 = null; 68 rnd2 = null; 69 } 70 71 public void testNextBytes() { 72 logger.fine("testNextBytes"); 73 74 final int n = 1024 * 1024; 75 final byte[] buf1 = new byte[n]; 76 final byte[] buf2 = new byte[n]; 77 for (int i = 32; --i >= 0; ) { 78 rnd1.nextBytes(buf1); 79 rnd2.nextBytes(buf2); 80 assertFalse(Arrays.equals(buf1, 0, buf2, 0, n)); 81 } 82 } 83 84 public void testNext() { 85 logger.fine("testNext"); 86 87 for (int i = 1024; --i >= 0; ) 88 assertTrue(rnd1.nextInt() != rnd2.nextInt()); 89 } 90 } 91 | Popular Tags |