From 9a7c65ffb6dc57f56d88702081a3a311b1be848e Mon Sep 17 00:00:00 2001 From: Pr0methean <4961925+Pr0methean@users.noreply.github.com> Date: Wed, 18 Jul 2018 16:06:05 -0700 Subject: [PATCH 01/13] Switch to Maven source-root convention --- .../random/api/JsonObjectInputCallable.java | 0 .../java}/org/random/api/RandomOrgCache.java | 0 .../java}/org/random/api/RandomOrgClient.java | 0 .../RandomOrgBadHTTPResponseException.java | 0 .../RandomOrgInsufficientBitsError.java | 0 .../RandomOrgInsufficientRequestsError.java | 0 .../api/exception/RandomOrgJSONRPCError.java | 0 .../RandomOrgKeyNotRunningError.java | 0 .../exception/RandomOrgRANDOMORGError.java | 0 .../RandomOrgSendTimeoutException.java | 0 .../org/random/util/RandomOrgRandom.java | 0 .../random/test/RandomOrgClientBasicTest.java | 1746 ++++++++--------- .../random/test/RandomOrgRandomBasicTest.java | 0 13 files changed, 873 insertions(+), 873 deletions(-) rename RandomJSONRPC/src/{ => main/java}/org/random/api/JsonObjectInputCallable.java (100%) rename RandomJSONRPC/src/{ => main/java}/org/random/api/RandomOrgCache.java (100%) rename RandomJSONRPC/src/{ => main/java}/org/random/api/RandomOrgClient.java (100%) rename RandomJSONRPC/src/{ => main/java}/org/random/api/exception/RandomOrgBadHTTPResponseException.java (100%) rename RandomJSONRPC/src/{ => main/java}/org/random/api/exception/RandomOrgInsufficientBitsError.java (100%) rename RandomJSONRPC/src/{ => main/java}/org/random/api/exception/RandomOrgInsufficientRequestsError.java (100%) rename RandomJSONRPC/src/{ => main/java}/org/random/api/exception/RandomOrgJSONRPCError.java (100%) rename RandomJSONRPC/src/{ => main/java}/org/random/api/exception/RandomOrgKeyNotRunningError.java (100%) rename RandomJSONRPC/src/{ => main/java}/org/random/api/exception/RandomOrgRANDOMORGError.java (100%) rename RandomJSONRPC/src/{ => main/java}/org/random/api/exception/RandomOrgSendTimeoutException.java (100%) rename RandomJSONRPC/src/{ => main/java}/org/random/util/RandomOrgRandom.java (100%) rename RandomJSONRPC/src/{ => test/java}/org/random/test/RandomOrgClientBasicTest.java (96%) rename RandomJSONRPC/src/{ => test/java}/org/random/test/RandomOrgRandomBasicTest.java (100%) diff --git a/RandomJSONRPC/src/org/random/api/JsonObjectInputCallable.java b/RandomJSONRPC/src/main/java/org/random/api/JsonObjectInputCallable.java similarity index 100% rename from RandomJSONRPC/src/org/random/api/JsonObjectInputCallable.java rename to RandomJSONRPC/src/main/java/org/random/api/JsonObjectInputCallable.java diff --git a/RandomJSONRPC/src/org/random/api/RandomOrgCache.java b/RandomJSONRPC/src/main/java/org/random/api/RandomOrgCache.java similarity index 100% rename from RandomJSONRPC/src/org/random/api/RandomOrgCache.java rename to RandomJSONRPC/src/main/java/org/random/api/RandomOrgCache.java diff --git a/RandomJSONRPC/src/org/random/api/RandomOrgClient.java b/RandomJSONRPC/src/main/java/org/random/api/RandomOrgClient.java similarity index 100% rename from RandomJSONRPC/src/org/random/api/RandomOrgClient.java rename to RandomJSONRPC/src/main/java/org/random/api/RandomOrgClient.java diff --git a/RandomJSONRPC/src/org/random/api/exception/RandomOrgBadHTTPResponseException.java b/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgBadHTTPResponseException.java similarity index 100% rename from RandomJSONRPC/src/org/random/api/exception/RandomOrgBadHTTPResponseException.java rename to RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgBadHTTPResponseException.java diff --git a/RandomJSONRPC/src/org/random/api/exception/RandomOrgInsufficientBitsError.java b/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgInsufficientBitsError.java similarity index 100% rename from RandomJSONRPC/src/org/random/api/exception/RandomOrgInsufficientBitsError.java rename to RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgInsufficientBitsError.java diff --git a/RandomJSONRPC/src/org/random/api/exception/RandomOrgInsufficientRequestsError.java b/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgInsufficientRequestsError.java similarity index 100% rename from RandomJSONRPC/src/org/random/api/exception/RandomOrgInsufficientRequestsError.java rename to RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgInsufficientRequestsError.java diff --git a/RandomJSONRPC/src/org/random/api/exception/RandomOrgJSONRPCError.java b/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgJSONRPCError.java similarity index 100% rename from RandomJSONRPC/src/org/random/api/exception/RandomOrgJSONRPCError.java rename to RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgJSONRPCError.java diff --git a/RandomJSONRPC/src/org/random/api/exception/RandomOrgKeyNotRunningError.java b/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgKeyNotRunningError.java similarity index 100% rename from RandomJSONRPC/src/org/random/api/exception/RandomOrgKeyNotRunningError.java rename to RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgKeyNotRunningError.java diff --git a/RandomJSONRPC/src/org/random/api/exception/RandomOrgRANDOMORGError.java b/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgRANDOMORGError.java similarity index 100% rename from RandomJSONRPC/src/org/random/api/exception/RandomOrgRANDOMORGError.java rename to RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgRANDOMORGError.java diff --git a/RandomJSONRPC/src/org/random/api/exception/RandomOrgSendTimeoutException.java b/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgSendTimeoutException.java similarity index 100% rename from RandomJSONRPC/src/org/random/api/exception/RandomOrgSendTimeoutException.java rename to RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgSendTimeoutException.java diff --git a/RandomJSONRPC/src/org/random/util/RandomOrgRandom.java b/RandomJSONRPC/src/main/java/org/random/util/RandomOrgRandom.java similarity index 100% rename from RandomJSONRPC/src/org/random/util/RandomOrgRandom.java rename to RandomJSONRPC/src/main/java/org/random/util/RandomOrgRandom.java diff --git a/RandomJSONRPC/src/org/random/test/RandomOrgClientBasicTest.java b/RandomJSONRPC/src/test/java/org/random/test/RandomOrgClientBasicTest.java similarity index 96% rename from RandomJSONRPC/src/org/random/test/RandomOrgClientBasicTest.java rename to RandomJSONRPC/src/test/java/org/random/test/RandomOrgClientBasicTest.java index 33027de..98b53d8 100644 --- a/RandomJSONRPC/src/org/random/test/RandomOrgClientBasicTest.java +++ b/RandomJSONRPC/src/test/java/org/random/test/RandomOrgClientBasicTest.java @@ -1,873 +1,873 @@ -package org.random.test; - -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import java.util.HashMap; -import java.util.NoSuchElementException; -import java.util.UUID; - -import org.junit.Assert; -import org.junit.BeforeClass; -import org.junit.Test; -import org.random.api.RandomOrgCache; -import org.random.api.RandomOrgClient; -import org.random.api.exception.RandomOrgRANDOMORGError; - -import com.google.gson.JsonObject; - -/** A set of tests for RandomOrgClient.java - ** @author Anders Haahr - **/ -public class RandomOrgClientBasicTest { - - private static RandomOrgClient roc, roc2; - - private static final String API_KEY_1 = "YOUR_API_KEY_HERE"; - private static final String API_KEY_2 = "YOUR_API_KEY_HERE"; - - private static final int BIT_QUOTA = 1000000; - - @BeforeClass - public static void testSetup() { - roc = RandomOrgClient.getRandomOrgClient(API_KEY_1, 3000, 120000, false); - roc2 = RandomOrgClient.getRandomOrgClient(API_KEY_2); - } - - @Test - public void testInfo() { - try { - assertTrue(roc.getBitsLeft() >= 0); - assertTrue(roc.getRequestsLeft() >= 0); - - assertTrue(roc2.getBitsLeft() >= 0); - assertTrue(roc2.getRequestsLeft() >= 0); - - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testAPIKeyDuplication() { - RandomOrgClient dupe = RandomOrgClient.getRandomOrgClient(API_KEY_1); - - assertTrue(!roc.equals(roc2)); - assertTrue(roc.equals(dupe)); - } - - @Test - public void testPositiveGetBitsLeft_1(){ - try { - int bitsLeft = roc.getBitsLeft(); - assertTrue(0 <= bitsLeft && bitsLeft <= BIT_QUOTA); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGetBitsLeft_2(){ - try { - int bitsLeft = roc2.getBitsLeft(); - assertTrue(0 <= bitsLeft && bitsLeft <= BIT_QUOTA); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - // Test Errors - - @Test - public void testNegativeErrorMessage202(){ - try{ - roc.generateIntegers(100000, 0, 10); - Assert.fail("should have thrown RandomOrgRANDOMORGError"); - } catch(RandomOrgRANDOMORGError e) { - System.out.println(e.getMessage()); - } catch (Exception e) { - Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); - } - try{ - roc2.generateIntegers(100000, 0, 10); - Assert.fail("should have thrown RandomOrgRANDOMORGError"); - } catch(RandomOrgRANDOMORGError e) { - System.out.println(e.getMessage()); - } catch (Exception e) { - Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); - } - } - - @Test - public void testNegativeErrorMessage203(){ - try{ - roc.generateIntegers(10, 0, 1000000001); - Assert.fail("should have thrown RandomOrgRANDOMORGError"); - } catch(RandomOrgRANDOMORGError e) { - System.out.println(e.getMessage()); - } catch (Exception e) { - Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); - } - try{ - roc2.generateIntegers(10, 0, 1000000001); - Assert.fail("should have thrown RandomOrgRANDOMORGError"); - } catch(RandomOrgRANDOMORGError e) { - System.out.println(e.getMessage()); - } catch (Exception e) { - Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); - } - } - - @Test - public void testNegativeErrorMessage300(){ - try{ - roc.generateIntegers(10, 10, 0); - Assert.fail("should have thrown RandomOrgRANDOMORGError"); - } catch(RandomOrgRANDOMORGError e) { - System.out.println(e.getMessage()); - } catch (Exception e) { - Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); - } - try{ - roc2.generateIntegers(10, 10, 0); - Assert.fail("should have thrown RandomOrgRANDOMORGError"); - } catch(RandomOrgRANDOMORGError e) { - System.out.println(e.getMessage()); - } catch (Exception e) { - Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); - } - } - - @Test - public void testNegativeErrorMessage301(){ - try{ - roc.generateIntegers(20, 0, 10, false); - Assert.fail("should have thrown RandomOrgRANDOMORGError"); - } catch(RandomOrgRANDOMORGError e) { - System.out.println(e.getMessage()); - } catch (Exception e) { - Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); - } - try{ - roc2.generateIntegers(20, 0, 10, false); - Assert.fail("should have thrown RandomOrgRANDOMORGError"); - } catch(RandomOrgRANDOMORGError e) { - System.out.println(e.getMessage()); - } catch (Exception e) { - Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); - } - } - - @Test - public void testNegativeErrorMessage400(){ - try{ - RandomOrgClient rpc2 = RandomOrgClient.getRandomOrgClient("ffffffff-ffff-ffff-ffff-ffffffffffff"); - rpc2.generateIntegers(1, 0, 1); - Assert.fail("should have thrown RandomOrgRANDOMORGError"); - } catch(RandomOrgRANDOMORGError e) { - System.out.println(e.getMessage()); - } catch (Exception e) { - Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); - } - } - - // Test Functions - - @Test - public void testPositiveGenerateInteger_1(){ - try { - assertNotNull(roc.generateIntegers(10, 0, 10)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - assertNotNull(roc2.generateIntegers(10, 0, 10)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateInteger_2(){ - try { - assertNotNull(roc.generateIntegers(10, 0, 10, false)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - assertNotNull(roc2.generateIntegers(10, 0, 10, false)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateDecimalFractions_1(){ - try { - assertNotNull(roc.generateDecimalFractions(10, 5)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - assertNotNull(roc2.generateDecimalFractions(10, 5)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateDecimalFractions_2(){ - try { - assertNotNull(roc.generateDecimalFractions(10, 5, false)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - assertNotNull(roc2.generateDecimalFractions(10, 5, false)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateGaussians(){ - try { - assertNotNull(roc.generateGaussians(10, 3.41d, 2.1d, 4)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - assertNotNull(roc2.generateGaussians(10, 3.41d, 2.1d, 4)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateStrings_1(){ - try { - assertNotNull(roc.generateStrings(10, 5, "abcd")); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - assertNotNull(roc2.generateStrings(10, 5, "abcd")); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateStrings_2(){ - try { - assertNotNull(roc.generateStrings(10, 5, "abcd", false)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - assertNotNull(roc2.generateStrings(10, 5, "abcd", false)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateUUIDs(){ - try { - assertNotNull(roc.generateUUIDs(10)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - assertNotNull(roc2.generateUUIDs(10)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateBlobs_1(){ - try { - assertNotNull(roc.generateBlobs(10, 16)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - assertNotNull(roc2.generateBlobs(10, 16)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateBlobs_2(){ - try { - assertNotNull(roc.generateBlobs(10, 16, RandomOrgClient.BLOB_FORMAT_HEX)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - assertNotNull(roc2.generateBlobs(10, 16, RandomOrgClient.BLOB_FORMAT_HEX)); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - // Test Functions (Signed) - - @Test - public void testPositiveGenerateSignedInteger_1(){ - try { - HashMap o = roc.generateSignedIntegers(10, 0, 10); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(int[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - HashMap o = roc2.generateSignedIntegers(10, 0, 10); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(int[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateSignedInteger_2(){ - try { - HashMap o = roc.generateSignedIntegers(10, 0, 10, false); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(int[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - HashMap o = roc2.generateSignedIntegers(10, 0, 10, false); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(int[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateSignedDecimalFractions_1(){ - try { - HashMap o = roc.generateSignedDecimalFractions(10, 5); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(double[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - HashMap o = roc2.generateSignedDecimalFractions(10, 5); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(double[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateSignedDecimalFractions_2(){ - try { - HashMap o = roc.generateSignedDecimalFractions(10, 5, false); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(double[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - HashMap o = roc2.generateSignedDecimalFractions(10, 5, false); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(double[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateSignedGaussians(){ - try { - HashMap o = roc.generateSignedGaussians(10, 3.41d, 2.1d, 4); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(double[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - HashMap o = roc2.generateSignedGaussians(10, 3.41d, 2.1d, 4); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(double[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateSignedStrings_1(){ - try { - HashMap o = roc.generateSignedStrings(10, 5, "abcd"); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(String[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - HashMap o = roc2.generateSignedStrings(10, 5, "abcd"); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(String[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateSignedStrings_2(){ - try { - HashMap o = roc.generateSignedStrings(10, 5, "abcd", false); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(String[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - HashMap o = roc2.generateSignedStrings(10, 5, "abcd", false); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(String[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateSignedUUIDs(){ - try { - HashMap o = roc.generateSignedUUIDs(10); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(UUID[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - HashMap o = roc2.generateSignedUUIDs(10); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(UUID[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateSignedBlobs_1(){ - try { - HashMap o = roc.generateSignedBlobs(10, 16); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(String[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - HashMap o = roc2.generateSignedBlobs(10, 16); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(String[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - @Test - public void testPositiveGenerateSignedBlobs_2(){ - try { - HashMap o = roc.generateSignedBlobs(10, 16, RandomOrgClient.BLOB_FORMAT_HEX); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(String[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - try { - HashMap o = roc2.generateSignedBlobs(10, 16, RandomOrgClient.BLOB_FORMAT_HEX); - - assertNotNull(o); - - assertTrue(o.containsKey("data")); - assertTrue(o.containsKey("random")); - assertTrue(o.containsKey("signature")); - - assertTrue(o.get("data").getClass().equals(String[].class)); - assertTrue(o.get("random").getClass().equals(JsonObject.class)); - assertTrue(o.get("signature").getClass().equals(String.class)); - - assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); - } catch (Exception e) { - Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); - } - } - - // Test Functions (Cache) - - @Test - public void testIntegerCache(){ - RandomOrgCache c = roc.createIntegerCache(5, 0, 10); - c.stop(); - - try { - c.get(); - Assert.fail("should have thrown NoSuchElementException"); - } catch (NoSuchElementException e) {} - - c.resume(); - - int[] got = null; - - while (got == null) { - try { - got = c.get(); - } catch (NoSuchElementException e) { - try { - Thread.sleep(50); - } catch (InterruptedException e1) { - Assert.fail("shouldn't have been interrupted!"); - } - } - } - - assertNotNull(got); - } - - @Test - public void testDecimalFractionCache(){ - RandomOrgCache c = roc2.createDecimalFractionCache(1, 5); - c.stop(); - - try { - c.get(); - Assert.fail("should have thrown NoSuchElementException"); - } catch (NoSuchElementException e) {} - - c.resume(); - - double[] got = null; - - while (got == null) { - try { - got = c.get(); - } catch (NoSuchElementException e) { - try { - Thread.sleep(50); - } catch (InterruptedException e1) { - Assert.fail("shouldn't have been interrupted!"); - } - } - } - - assertNotNull(got); - } - - @Test - public void testGaussianCache(){ - RandomOrgCache c = roc.createGaussianCache(10, 3.41d, 2.1d, 4); - c.stop(); - - try { - c.get(); - Assert.fail("should have thrown NoSuchElementException"); - } catch (NoSuchElementException e) {} - - c.resume(); - - double[] got = null; - - while (got == null) { - try { - got = c.get(); - } catch (NoSuchElementException e) { - try { - Thread.sleep(50); - } catch (InterruptedException e1) { - Assert.fail("shouldn't have been interrupted!"); - } - } - } - - assertNotNull(got); - } - - @Test - public void testStringCache(){ - RandomOrgCache c = roc2.createStringCache(5, 5, "abcds"); - c.stop(); - - try { - c.get(); - Assert.fail("should have thrown NoSuchElementException"); - } catch (NoSuchElementException e) {} - - c.resume(); - - String[] got = null; - - while (got == null) { - try { - got = c.get(); - } catch (NoSuchElementException e) { - try { - Thread.sleep(50); - } catch (InterruptedException e1) { - Assert.fail("shouldn't have been interrupted!"); - } - } - } - - assertNotNull(got); - } - - @Test - public void testUUIDCache(){ - RandomOrgCache c = roc.createUUIDCache(5); - c.stop(); - - try { - c.get(); - Assert.fail("should have thrown NoSuchElementException"); - } catch (NoSuchElementException e) {} - - c.resume(); - - UUID[] got = null; - - while (got == null) { - try { - got = c.get(); - } catch (NoSuchElementException e) { - try { - Thread.sleep(50); - } catch (InterruptedException e1) { - Assert.fail("shouldn't have been interrupted!"); - } - } - } - - assertNotNull(got); - } - - @Test - public void testBlobCache(){ - RandomOrgCache c = roc2.createBlobCache(5, 8); - c.stop(); - - try { - c.get(); - Assert.fail("should have thrown NoSuchElementException"); - } catch (NoSuchElementException e) {} - - c.resume(); - - String[] got = null; - - while (got == null) { - try { - got = c.get(); - } catch (NoSuchElementException e) { - try { - Thread.sleep(50); - } catch (InterruptedException e1) { - Assert.fail("shouldn't have been interrupted!"); - } - } - } - - assertNotNull(got); - } -} +package org.random.test; + +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.util.HashMap; +import java.util.NoSuchElementException; +import java.util.UUID; + +import org.junit.Assert; +import org.junit.BeforeClass; +import org.junit.Test; +import org.random.api.RandomOrgCache; +import org.random.api.RandomOrgClient; +import org.random.api.exception.RandomOrgRANDOMORGError; + +import com.google.gson.JsonObject; + +/** A set of tests for RandomOrgClient.java + ** @author Anders Haahr + **/ +public class RandomOrgClientBasicTest { + + private static RandomOrgClient roc, roc2; + + private static final String API_KEY_1 = "YOUR_API_KEY_HERE"; + private static final String API_KEY_2 = "YOUR_API_KEY_HERE"; + + private static final int BIT_QUOTA = 1000000; + + @BeforeClass + public static void testSetup() { + roc = RandomOrgClient.getRandomOrgClient(API_KEY_1, 3000, 120000, false); + roc2 = RandomOrgClient.getRandomOrgClient(API_KEY_2); + } + + @Test + public void testInfo() { + try { + assertTrue(roc.getBitsLeft() >= 0); + assertTrue(roc.getRequestsLeft() >= 0); + + assertTrue(roc2.getBitsLeft() >= 0); + assertTrue(roc2.getRequestsLeft() >= 0); + + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testAPIKeyDuplication() { + RandomOrgClient dupe = RandomOrgClient.getRandomOrgClient(API_KEY_1); + + assertTrue(!roc.equals(roc2)); + assertTrue(roc.equals(dupe)); + } + + @Test + public void testPositiveGetBitsLeft_1(){ + try { + int bitsLeft = roc.getBitsLeft(); + assertTrue(0 <= bitsLeft && bitsLeft <= BIT_QUOTA); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGetBitsLeft_2(){ + try { + int bitsLeft = roc2.getBitsLeft(); + assertTrue(0 <= bitsLeft && bitsLeft <= BIT_QUOTA); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + // Test Errors + + @Test + public void testNegativeErrorMessage202(){ + try{ + roc.generateIntegers(100000, 0, 10); + Assert.fail("should have thrown RandomOrgRANDOMORGError"); + } catch(RandomOrgRANDOMORGError e) { + System.out.println(e.getMessage()); + } catch (Exception e) { + Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); + } + try{ + roc2.generateIntegers(100000, 0, 10); + Assert.fail("should have thrown RandomOrgRANDOMORGError"); + } catch(RandomOrgRANDOMORGError e) { + System.out.println(e.getMessage()); + } catch (Exception e) { + Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); + } + } + + @Test + public void testNegativeErrorMessage203(){ + try{ + roc.generateIntegers(10, 0, 1000000001); + Assert.fail("should have thrown RandomOrgRANDOMORGError"); + } catch(RandomOrgRANDOMORGError e) { + System.out.println(e.getMessage()); + } catch (Exception e) { + Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); + } + try{ + roc2.generateIntegers(10, 0, 1000000001); + Assert.fail("should have thrown RandomOrgRANDOMORGError"); + } catch(RandomOrgRANDOMORGError e) { + System.out.println(e.getMessage()); + } catch (Exception e) { + Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); + } + } + + @Test + public void testNegativeErrorMessage300(){ + try{ + roc.generateIntegers(10, 10, 0); + Assert.fail("should have thrown RandomOrgRANDOMORGError"); + } catch(RandomOrgRANDOMORGError e) { + System.out.println(e.getMessage()); + } catch (Exception e) { + Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); + } + try{ + roc2.generateIntegers(10, 10, 0); + Assert.fail("should have thrown RandomOrgRANDOMORGError"); + } catch(RandomOrgRANDOMORGError e) { + System.out.println(e.getMessage()); + } catch (Exception e) { + Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); + } + } + + @Test + public void testNegativeErrorMessage301(){ + try{ + roc.generateIntegers(20, 0, 10, false); + Assert.fail("should have thrown RandomOrgRANDOMORGError"); + } catch(RandomOrgRANDOMORGError e) { + System.out.println(e.getMessage()); + } catch (Exception e) { + Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); + } + try{ + roc2.generateIntegers(20, 0, 10, false); + Assert.fail("should have thrown RandomOrgRANDOMORGError"); + } catch(RandomOrgRANDOMORGError e) { + System.out.println(e.getMessage()); + } catch (Exception e) { + Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); + } + } + + @Test + public void testNegativeErrorMessage400(){ + try{ + RandomOrgClient rpc2 = RandomOrgClient.getRandomOrgClient("ffffffff-ffff-ffff-ffff-ffffffffffff"); + rpc2.generateIntegers(1, 0, 1); + Assert.fail("should have thrown RandomOrgRANDOMORGError"); + } catch(RandomOrgRANDOMORGError e) { + System.out.println(e.getMessage()); + } catch (Exception e) { + Assert.fail("should have thrown RandomOrgRANDOMORGError, instead threw " + e.getClass().getName()); + } + } + + // Test Functions + + @Test + public void testPositiveGenerateInteger_1(){ + try { + assertNotNull(roc.generateIntegers(10, 0, 10)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + assertNotNull(roc2.generateIntegers(10, 0, 10)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateInteger_2(){ + try { + assertNotNull(roc.generateIntegers(10, 0, 10, false)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + assertNotNull(roc2.generateIntegers(10, 0, 10, false)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateDecimalFractions_1(){ + try { + assertNotNull(roc.generateDecimalFractions(10, 5)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + assertNotNull(roc2.generateDecimalFractions(10, 5)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateDecimalFractions_2(){ + try { + assertNotNull(roc.generateDecimalFractions(10, 5, false)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + assertNotNull(roc2.generateDecimalFractions(10, 5, false)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateGaussians(){ + try { + assertNotNull(roc.generateGaussians(10, 3.41d, 2.1d, 4)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + assertNotNull(roc2.generateGaussians(10, 3.41d, 2.1d, 4)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateStrings_1(){ + try { + assertNotNull(roc.generateStrings(10, 5, "abcd")); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + assertNotNull(roc2.generateStrings(10, 5, "abcd")); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateStrings_2(){ + try { + assertNotNull(roc.generateStrings(10, 5, "abcd", false)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + assertNotNull(roc2.generateStrings(10, 5, "abcd", false)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateUUIDs(){ + try { + assertNotNull(roc.generateUUIDs(10)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + assertNotNull(roc2.generateUUIDs(10)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateBlobs_1(){ + try { + assertNotNull(roc.generateBlobs(10, 16)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + assertNotNull(roc2.generateBlobs(10, 16)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateBlobs_2(){ + try { + assertNotNull(roc.generateBlobs(10, 16, RandomOrgClient.BLOB_FORMAT_HEX)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + assertNotNull(roc2.generateBlobs(10, 16, RandomOrgClient.BLOB_FORMAT_HEX)); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + // Test Functions (Signed) + + @Test + public void testPositiveGenerateSignedInteger_1(){ + try { + HashMap o = roc.generateSignedIntegers(10, 0, 10); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(int[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + HashMap o = roc2.generateSignedIntegers(10, 0, 10); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(int[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateSignedInteger_2(){ + try { + HashMap o = roc.generateSignedIntegers(10, 0, 10, false); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(int[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + HashMap o = roc2.generateSignedIntegers(10, 0, 10, false); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(int[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateSignedDecimalFractions_1(){ + try { + HashMap o = roc.generateSignedDecimalFractions(10, 5); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(double[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + HashMap o = roc2.generateSignedDecimalFractions(10, 5); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(double[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateSignedDecimalFractions_2(){ + try { + HashMap o = roc.generateSignedDecimalFractions(10, 5, false); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(double[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + HashMap o = roc2.generateSignedDecimalFractions(10, 5, false); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(double[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateSignedGaussians(){ + try { + HashMap o = roc.generateSignedGaussians(10, 3.41d, 2.1d, 4); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(double[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + HashMap o = roc2.generateSignedGaussians(10, 3.41d, 2.1d, 4); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(double[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateSignedStrings_1(){ + try { + HashMap o = roc.generateSignedStrings(10, 5, "abcd"); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(String[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + HashMap o = roc2.generateSignedStrings(10, 5, "abcd"); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(String[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateSignedStrings_2(){ + try { + HashMap o = roc.generateSignedStrings(10, 5, "abcd", false); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(String[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + HashMap o = roc2.generateSignedStrings(10, 5, "abcd", false); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(String[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateSignedUUIDs(){ + try { + HashMap o = roc.generateSignedUUIDs(10); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(UUID[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + HashMap o = roc2.generateSignedUUIDs(10); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(UUID[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateSignedBlobs_1(){ + try { + HashMap o = roc.generateSignedBlobs(10, 16); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(String[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + HashMap o = roc2.generateSignedBlobs(10, 16); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(String[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + @Test + public void testPositiveGenerateSignedBlobs_2(){ + try { + HashMap o = roc.generateSignedBlobs(10, 16, RandomOrgClient.BLOB_FORMAT_HEX); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(String[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + try { + HashMap o = roc2.generateSignedBlobs(10, 16, RandomOrgClient.BLOB_FORMAT_HEX); + + assertNotNull(o); + + assertTrue(o.containsKey("data")); + assertTrue(o.containsKey("random")); + assertTrue(o.containsKey("signature")); + + assertTrue(o.get("data").getClass().equals(String[].class)); + assertTrue(o.get("random").getClass().equals(JsonObject.class)); + assertTrue(o.get("signature").getClass().equals(String.class)); + + assertTrue(roc.verifySignature((JsonObject)o.get("random"), (String)o.get("signature"))); + } catch (Exception e) { + Assert.fail("Networking error: " + e.getClass().getName() + ":" + e.getMessage()); + } + } + + // Test Functions (Cache) + + @Test + public void testIntegerCache(){ + RandomOrgCache c = roc.createIntegerCache(5, 0, 10); + c.stop(); + + try { + c.get(); + Assert.fail("should have thrown NoSuchElementException"); + } catch (NoSuchElementException e) {} + + c.resume(); + + int[] got = null; + + while (got == null) { + try { + got = c.get(); + } catch (NoSuchElementException e) { + try { + Thread.sleep(50); + } catch (InterruptedException e1) { + Assert.fail("shouldn't have been interrupted!"); + } + } + } + + assertNotNull(got); + } + + @Test + public void testDecimalFractionCache(){ + RandomOrgCache c = roc2.createDecimalFractionCache(1, 5); + c.stop(); + + try { + c.get(); + Assert.fail("should have thrown NoSuchElementException"); + } catch (NoSuchElementException e) {} + + c.resume(); + + double[] got = null; + + while (got == null) { + try { + got = c.get(); + } catch (NoSuchElementException e) { + try { + Thread.sleep(50); + } catch (InterruptedException e1) { + Assert.fail("shouldn't have been interrupted!"); + } + } + } + + assertNotNull(got); + } + + @Test + public void testGaussianCache(){ + RandomOrgCache c = roc.createGaussianCache(10, 3.41d, 2.1d, 4); + c.stop(); + + try { + c.get(); + Assert.fail("should have thrown NoSuchElementException"); + } catch (NoSuchElementException e) {} + + c.resume(); + + double[] got = null; + + while (got == null) { + try { + got = c.get(); + } catch (NoSuchElementException e) { + try { + Thread.sleep(50); + } catch (InterruptedException e1) { + Assert.fail("shouldn't have been interrupted!"); + } + } + } + + assertNotNull(got); + } + + @Test + public void testStringCache(){ + RandomOrgCache c = roc2.createStringCache(5, 5, "abcds"); + c.stop(); + + try { + c.get(); + Assert.fail("should have thrown NoSuchElementException"); + } catch (NoSuchElementException e) {} + + c.resume(); + + String[] got = null; + + while (got == null) { + try { + got = c.get(); + } catch (NoSuchElementException e) { + try { + Thread.sleep(50); + } catch (InterruptedException e1) { + Assert.fail("shouldn't have been interrupted!"); + } + } + } + + assertNotNull(got); + } + + @Test + public void testUUIDCache(){ + RandomOrgCache c = roc.createUUIDCache(5); + c.stop(); + + try { + c.get(); + Assert.fail("should have thrown NoSuchElementException"); + } catch (NoSuchElementException e) {} + + c.resume(); + + UUID[] got = null; + + while (got == null) { + try { + got = c.get(); + } catch (NoSuchElementException e) { + try { + Thread.sleep(50); + } catch (InterruptedException e1) { + Assert.fail("shouldn't have been interrupted!"); + } + } + } + + assertNotNull(got); + } + + @Test + public void testBlobCache(){ + RandomOrgCache c = roc2.createBlobCache(5, 8); + c.stop(); + + try { + c.get(); + Assert.fail("should have thrown NoSuchElementException"); + } catch (NoSuchElementException e) {} + + c.resume(); + + String[] got = null; + + while (got == null) { + try { + got = c.get(); + } catch (NoSuchElementException e) { + try { + Thread.sleep(50); + } catch (InterruptedException e1) { + Assert.fail("shouldn't have been interrupted!"); + } + } + } + + assertNotNull(got); + } +} diff --git a/RandomJSONRPC/src/org/random/test/RandomOrgRandomBasicTest.java b/RandomJSONRPC/src/test/java/org/random/test/RandomOrgRandomBasicTest.java similarity index 100% rename from RandomJSONRPC/src/org/random/test/RandomOrgRandomBasicTest.java rename to RandomJSONRPC/src/test/java/org/random/test/RandomOrgRandomBasicTest.java From d28a00639d5da3fcb61eb87cc60975bffeb0e514 Mon Sep 17 00:00:00 2001 From: Pr0methean <4961925+Pr0methean@users.noreply.github.com> Date: Wed, 18 Jul 2018 16:15:35 -0700 Subject: [PATCH 02/13] Add pom.xml --- RandomJSONRPC/src/main/main.iml | 23 ++++++++++++++++++ RandomJSONRPC/src/main/pom.xml | 42 +++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 RandomJSONRPC/src/main/main.iml create mode 100644 RandomJSONRPC/src/main/pom.xml diff --git a/RandomJSONRPC/src/main/main.iml b/RandomJSONRPC/src/main/main.iml new file mode 100644 index 0000000..0d154dd --- /dev/null +++ b/RandomJSONRPC/src/main/main.iml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/RandomJSONRPC/src/main/pom.xml b/RandomJSONRPC/src/main/pom.xml new file mode 100644 index 0000000..4f01d79 --- /dev/null +++ b/RandomJSONRPC/src/main/pom.xml @@ -0,0 +1,42 @@ + + + 4.0.0 + + org.random + json-rpc + 1.0-SNAPSHOT + + + + org.apache.maven.plugins + maven-compiler-plugin + + 6 + 6 + + + + + + + + com.google.code.gson + gson + 2.8.5 + + + commons-codec + commons-codec + 1.6 + + + junit + junit + 4.12 + test + + + + \ No newline at end of file From cfaffd8d07d3cda228533f2004fe05d351b5a58c Mon Sep 17 00:00:00 2001 From: Pr0methean <4961925+Pr0methean@users.noreply.github.com> Date: Wed, 18 Jul 2018 16:16:15 -0700 Subject: [PATCH 03/13] Add .idea to .gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 1468717..9e820a8 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ /build/ /bin/ target/ +.idea/ # OS Files # .DS_Store From 87b30fe6de300c532b8482c894174ba126fb8e72 Mon Sep 17 00:00:00 2001 From: Pr0methean <4961925+Pr0methean@users.noreply.github.com> Date: Wed, 18 Jul 2018 16:20:37 -0700 Subject: [PATCH 04/13] Add .travis.yml --- .travis.yml | 1 + 1 file changed, 1 insertion(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..f5c99a7 --- /dev/null +++ b/.travis.yml @@ -0,0 +1 @@ +language: java \ No newline at end of file From 024b253057d502e8f52fbb8932bf8ab2d074c806 Mon Sep 17 00:00:00 2001 From: Pr0methean <4961925+Pr0methean@users.noreply.github.com> Date: Wed, 18 Jul 2018 16:24:46 -0700 Subject: [PATCH 05/13] Reorganize source roots to Maven convention Single-project repo should have pom.xml in repo root --- RandomJSONRPC/.gitignore | 1 - RandomJSONRPC/src/main/pom.xml => pom.xml | 0 .../main/java/org/random/api/JsonObjectInputCallable.java | 0 .../src => src}/main/java/org/random/api/RandomOrgCache.java | 0 .../src => src}/main/java/org/random/api/RandomOrgClient.java | 0 .../random/api/exception/RandomOrgBadHTTPResponseException.java | 0 .../org/random/api/exception/RandomOrgInsufficientBitsError.java | 0 .../random/api/exception/RandomOrgInsufficientRequestsError.java | 0 .../java/org/random/api/exception/RandomOrgJSONRPCError.java | 0 .../org/random/api/exception/RandomOrgKeyNotRunningError.java | 0 .../java/org/random/api/exception/RandomOrgRANDOMORGError.java | 0 .../org/random/api/exception/RandomOrgSendTimeoutException.java | 0 .../src => src}/main/java/org/random/util/RandomOrgRandom.java | 0 {RandomJSONRPC/src => src}/main/main.iml | 0 .../test/java/org/random/test/RandomOrgClientBasicTest.java | 0 .../test/java/org/random/test/RandomOrgRandomBasicTest.java | 0 16 files changed, 1 deletion(-) delete mode 100644 RandomJSONRPC/.gitignore rename RandomJSONRPC/src/main/pom.xml => pom.xml (100%) rename {RandomJSONRPC/src => src}/main/java/org/random/api/JsonObjectInputCallable.java (100%) rename {RandomJSONRPC/src => src}/main/java/org/random/api/RandomOrgCache.java (100%) rename {RandomJSONRPC/src => src}/main/java/org/random/api/RandomOrgClient.java (100%) rename {RandomJSONRPC/src => src}/main/java/org/random/api/exception/RandomOrgBadHTTPResponseException.java (100%) rename {RandomJSONRPC/src => src}/main/java/org/random/api/exception/RandomOrgInsufficientBitsError.java (100%) rename {RandomJSONRPC/src => src}/main/java/org/random/api/exception/RandomOrgInsufficientRequestsError.java (100%) rename {RandomJSONRPC/src => src}/main/java/org/random/api/exception/RandomOrgJSONRPCError.java (100%) rename {RandomJSONRPC/src => src}/main/java/org/random/api/exception/RandomOrgKeyNotRunningError.java (100%) rename {RandomJSONRPC/src => src}/main/java/org/random/api/exception/RandomOrgRANDOMORGError.java (100%) rename {RandomJSONRPC/src => src}/main/java/org/random/api/exception/RandomOrgSendTimeoutException.java (100%) rename {RandomJSONRPC/src => src}/main/java/org/random/util/RandomOrgRandom.java (100%) rename {RandomJSONRPC/src => src}/main/main.iml (100%) rename {RandomJSONRPC/src => src}/test/java/org/random/test/RandomOrgClientBasicTest.java (100%) rename {RandomJSONRPC/src => src}/test/java/org/random/test/RandomOrgRandomBasicTest.java (100%) diff --git a/RandomJSONRPC/.gitignore b/RandomJSONRPC/.gitignore deleted file mode 100644 index 5e56e04..0000000 --- a/RandomJSONRPC/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/bin diff --git a/RandomJSONRPC/src/main/pom.xml b/pom.xml similarity index 100% rename from RandomJSONRPC/src/main/pom.xml rename to pom.xml diff --git a/RandomJSONRPC/src/main/java/org/random/api/JsonObjectInputCallable.java b/src/main/java/org/random/api/JsonObjectInputCallable.java similarity index 100% rename from RandomJSONRPC/src/main/java/org/random/api/JsonObjectInputCallable.java rename to src/main/java/org/random/api/JsonObjectInputCallable.java diff --git a/RandomJSONRPC/src/main/java/org/random/api/RandomOrgCache.java b/src/main/java/org/random/api/RandomOrgCache.java similarity index 100% rename from RandomJSONRPC/src/main/java/org/random/api/RandomOrgCache.java rename to src/main/java/org/random/api/RandomOrgCache.java diff --git a/RandomJSONRPC/src/main/java/org/random/api/RandomOrgClient.java b/src/main/java/org/random/api/RandomOrgClient.java similarity index 100% rename from RandomJSONRPC/src/main/java/org/random/api/RandomOrgClient.java rename to src/main/java/org/random/api/RandomOrgClient.java diff --git a/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgBadHTTPResponseException.java b/src/main/java/org/random/api/exception/RandomOrgBadHTTPResponseException.java similarity index 100% rename from RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgBadHTTPResponseException.java rename to src/main/java/org/random/api/exception/RandomOrgBadHTTPResponseException.java diff --git a/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgInsufficientBitsError.java b/src/main/java/org/random/api/exception/RandomOrgInsufficientBitsError.java similarity index 100% rename from RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgInsufficientBitsError.java rename to src/main/java/org/random/api/exception/RandomOrgInsufficientBitsError.java diff --git a/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgInsufficientRequestsError.java b/src/main/java/org/random/api/exception/RandomOrgInsufficientRequestsError.java similarity index 100% rename from RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgInsufficientRequestsError.java rename to src/main/java/org/random/api/exception/RandomOrgInsufficientRequestsError.java diff --git a/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgJSONRPCError.java b/src/main/java/org/random/api/exception/RandomOrgJSONRPCError.java similarity index 100% rename from RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgJSONRPCError.java rename to src/main/java/org/random/api/exception/RandomOrgJSONRPCError.java diff --git a/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgKeyNotRunningError.java b/src/main/java/org/random/api/exception/RandomOrgKeyNotRunningError.java similarity index 100% rename from RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgKeyNotRunningError.java rename to src/main/java/org/random/api/exception/RandomOrgKeyNotRunningError.java diff --git a/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgRANDOMORGError.java b/src/main/java/org/random/api/exception/RandomOrgRANDOMORGError.java similarity index 100% rename from RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgRANDOMORGError.java rename to src/main/java/org/random/api/exception/RandomOrgRANDOMORGError.java diff --git a/RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgSendTimeoutException.java b/src/main/java/org/random/api/exception/RandomOrgSendTimeoutException.java similarity index 100% rename from RandomJSONRPC/src/main/java/org/random/api/exception/RandomOrgSendTimeoutException.java rename to src/main/java/org/random/api/exception/RandomOrgSendTimeoutException.java diff --git a/RandomJSONRPC/src/main/java/org/random/util/RandomOrgRandom.java b/src/main/java/org/random/util/RandomOrgRandom.java similarity index 100% rename from RandomJSONRPC/src/main/java/org/random/util/RandomOrgRandom.java rename to src/main/java/org/random/util/RandomOrgRandom.java diff --git a/RandomJSONRPC/src/main/main.iml b/src/main/main.iml similarity index 100% rename from RandomJSONRPC/src/main/main.iml rename to src/main/main.iml diff --git a/RandomJSONRPC/src/test/java/org/random/test/RandomOrgClientBasicTest.java b/src/test/java/org/random/test/RandomOrgClientBasicTest.java similarity index 100% rename from RandomJSONRPC/src/test/java/org/random/test/RandomOrgClientBasicTest.java rename to src/test/java/org/random/test/RandomOrgClientBasicTest.java diff --git a/RandomJSONRPC/src/test/java/org/random/test/RandomOrgRandomBasicTest.java b/src/test/java/org/random/test/RandomOrgRandomBasicTest.java similarity index 100% rename from RandomJSONRPC/src/test/java/org/random/test/RandomOrgRandomBasicTest.java rename to src/test/java/org/random/test/RandomOrgRandomBasicTest.java From ff1ea5ccf98288e3e35d888ed4d32e5b0d776507 Mon Sep 17 00:00:00 2001 From: Chris Hennick <4961925+Pr0methean@users.noreply.github.com> Date: Wed, 18 Jul 2018 23:44:29 +0000 Subject: [PATCH 06/13] Add my API key --- .travis.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index f5c99a7..ba471a5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1 +1,4 @@ -language: java \ No newline at end of file +language: java +env: + global: + secure: LhoW8DZHZCla8uaZS0m+aecoSBkenugR4aFL7f6bA27P9PPKR7CPnXRrnoNqxLKrzpcHz/8P0NEd6MTW5G9KTzEY0Q3idQXATMp3flWPwXpbX5jg9u+H0RC2qpTQHxaGNUPJJoQ3YDbmkiRcmCPmSYzH8KujV29Kri46EarxPfnduM3qw+SJ01QbSZ4zE9dn1ruMU98hdLsg6qjmdN5bKPGlt642HxCZ4n/P8hQn04GrV0+W46nzx1aaRR3w30EFxSms86bKKjGVr1jMwh2SGQzlvzQbs258Q8GdxT8w32rwdJbSvDiey3iM0cYHgKuDiq5pbd/UyoxuvhgtY61VJlRzKdHlmPskfRDc9Z7dQGvbqsNmM7JGYJ0bdUqXWcK5y9EbYWAGNZq7ZqFFUyzgSxqNdDkUe3R5fPMqZ/lPqAv8+wAXCizymZB0oTgZj+Xe6fca0d7foTBowkorwYtkZ3i1PTXnhJcd2NCwgWbkLdR6mzzRfuAJHrie6lgVvuJJXJRa3hyGqH0CqMtbZCVp5cuynPedRiCUdFELh11AGWmUdLpm8LYZWr7nTVIsMYDmsm2aRLOT2fv40RdHKUUwcpWz9Zo0vAsSO0783PaOWEYPnAi6y33yaFES4cgQYE1YUdC/JZ/8nOLVijkbV4MU9ofuXudtnNKh8SilC3dA/zQ= From 2bb30615aec1428275cfefc4d4ff733c11c71f74 Mon Sep 17 00:00:00 2001 From: Chris Hennick <4961925+Pr0methean@users.noreply.github.com> Date: Wed, 18 Jul 2018 23:54:38 +0000 Subject: [PATCH 07/13] Retry adding API key --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index ba471a5..11437a6 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,4 @@ language: java env: global: - secure: LhoW8DZHZCla8uaZS0m+aecoSBkenugR4aFL7f6bA27P9PPKR7CPnXRrnoNqxLKrzpcHz/8P0NEd6MTW5G9KTzEY0Q3idQXATMp3flWPwXpbX5jg9u+H0RC2qpTQHxaGNUPJJoQ3YDbmkiRcmCPmSYzH8KujV29Kri46EarxPfnduM3qw+SJ01QbSZ4zE9dn1ruMU98hdLsg6qjmdN5bKPGlt642HxCZ4n/P8hQn04GrV0+W46nzx1aaRR3w30EFxSms86bKKjGVr1jMwh2SGQzlvzQbs258Q8GdxT8w32rwdJbSvDiey3iM0cYHgKuDiq5pbd/UyoxuvhgtY61VJlRzKdHlmPskfRDc9Z7dQGvbqsNmM7JGYJ0bdUqXWcK5y9EbYWAGNZq7ZqFFUyzgSxqNdDkUe3R5fPMqZ/lPqAv8+wAXCizymZB0oTgZj+Xe6fca0d7foTBowkorwYtkZ3i1PTXnhJcd2NCwgWbkLdR6mzzRfuAJHrie6lgVvuJJXJRa3hyGqH0CqMtbZCVp5cuynPedRiCUdFELh11AGWmUdLpm8LYZWr7nTVIsMYDmsm2aRLOT2fv40RdHKUUwcpWz9Zo0vAsSO0783PaOWEYPnAi6y33yaFES4cgQYE1YUdC/JZ/8nOLVijkbV4MU9ofuXudtnNKh8SilC3dA/zQ= + secure: 1WNSZWhugiSOcQHn3jP0yaNowhOeKWAOq+IH0astZr4rdKy/mhu02fUl4bhKLifc3bGffjgbAxfp7ezG4gsWCmk2XndT6pfWjI8xYQTric3U+QzfGRLAbAaK/vCtMxyzvZcRbNYWyzBBOHQVxbQnpAGEk6YDOj7RXXGSkGn50AmgrhgN0qXajtGYT2ncnqNkZ87ZRBbI5CzLIXLsK281G5rSECPjyz5HzsueV/NupFYBj4S99ssS664KZf8zYG2pUGvo59i+WUVo8P9WgPkP8bfFYoHJREF9F/LItmbemAj4xGGXA0oJDy7Bg2XPd23njiEsn4QPbPWUrwKl2dM/isiWM7Ge0M6B8O+KtF+LU0n2nNUYQt0NUvLqCIL3RDWB4bXM4kgoRVyKmkYKInx+SZawBmeu24S1XxQ9BiQb+xj7knhPnBmTA6za3r6uMt0zn5bOA8LcUJ7Sy+dA8iY71LPPpDq7FwKPfB0oWZm7CxWMTvgykkId0g2goz08yD5/PA3b9P148+72vq7dG9qCHmz866E13y0UAChmPUOokYPwGa+Po7/YhsJInRKfK4RL5gRBl+uXK1W1geZCSZCBG6/rEj4ewQprNILWTHVfvov8CgTuyQGqvhXU0r7ZGVGUm7JNritvsH9k0OA20izNF/WHSgmtDisVCNXTaJsecw0= From 471fbca525a234c4ed3096ffa2b6fe1e29888609 Mon Sep 17 00:00:00 2001 From: Chris Hennick <4961925+Pr0methean@users.noreply.github.com> Date: Wed, 18 Jul 2018 23:58:37 +0000 Subject: [PATCH 08/13] Bug fix? API key without quotes --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 11437a6..f727d0c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,4 @@ language: java env: global: - secure: 1WNSZWhugiSOcQHn3jP0yaNowhOeKWAOq+IH0astZr4rdKy/mhu02fUl4bhKLifc3bGffjgbAxfp7ezG4gsWCmk2XndT6pfWjI8xYQTric3U+QzfGRLAbAaK/vCtMxyzvZcRbNYWyzBBOHQVxbQnpAGEk6YDOj7RXXGSkGn50AmgrhgN0qXajtGYT2ncnqNkZ87ZRBbI5CzLIXLsK281G5rSECPjyz5HzsueV/NupFYBj4S99ssS664KZf8zYG2pUGvo59i+WUVo8P9WgPkP8bfFYoHJREF9F/LItmbemAj4xGGXA0oJDy7Bg2XPd23njiEsn4QPbPWUrwKl2dM/isiWM7Ge0M6B8O+KtF+LU0n2nNUYQt0NUvLqCIL3RDWB4bXM4kgoRVyKmkYKInx+SZawBmeu24S1XxQ9BiQb+xj7knhPnBmTA6za3r6uMt0zn5bOA8LcUJ7Sy+dA8iY71LPPpDq7FwKPfB0oWZm7CxWMTvgykkId0g2goz08yD5/PA3b9P148+72vq7dG9qCHmz866E13y0UAChmPUOokYPwGa+Po7/YhsJInRKfK4RL5gRBl+uXK1W1geZCSZCBG6/rEj4ewQprNILWTHVfvov8CgTuyQGqvhXU0r7ZGVGUm7JNritvsH9k0OA20izNF/WHSgmtDisVCNXTaJsecw0= + secure: I836FCIFhlVb3IkfujPp/E/4dqosF9PYRhrMbaHk4oFsMfMlHknO5WbGvXilA20FW+YM8k9ww9e/qIxcsndw6NoNfD1u0hdmvWwnaZS4TTmDhcogyHs/haLuPWCwe8agj+/Q+Ly/Y5XaCSeY96sIB9On4MCnhF0yIpH8W3EZp7s/YMrp4ZMZmff53A8317+2/OIWQnlKUb+7N0ROTtvDcWJNGso1c2PgDxKxfMRL57OqLTzmJI2j/PulI2UdggVq3lrex+Ro/sY0LJzBhx8FxQsgthxjBNuhTgj+tZQHm4ha/BVH/WtPjjTNdWAWXBmFMXZl5IfuWwEYqRjkMegKBwbRNkzKYMX0Br3qprVlAfmX/muDSQM/RvRPRWZdWgWmegJrmlT1Sq+Dp/99QlbDPKmJUS66G9JPfEymBqfxTA8/2eAt6dBEmRs8a/IbIucwEG4Kcr//vvjPZ5stweQmRsJn9G51Dlp4/tA3+nmsDrVcK6eXRQ9K/P1btApEDGvcKr8+8/mfJFxlzZcbfXpQjanxpDYa8NqgzVGiRG8s3xg214ayQ1FLsisuEAJjPDrVmcyGq5UW/1FMXN99/G1TUmTegFYqREiYsfJ3QVCPjhqErXFgOROY20J7uIBVtSlQs+K4CjkhwMosZHZrg0vzYqbezxeUnZF7EtOyjWt/BSA= From 65eb33b473012afd60030546a7e0cc8041147327 Mon Sep 17 00:00:00 2001 From: Pr0methean <4961925+Pr0methean@users.noreply.github.com> Date: Wed, 18 Jul 2018 17:02:47 -0700 Subject: [PATCH 09/13] Load test API key from environment variable --- src/test/java/org/random/test/RandomOrgClientBasicTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/test/java/org/random/test/RandomOrgClientBasicTest.java b/src/test/java/org/random/test/RandomOrgClientBasicTest.java index 98b53d8..b72fc78 100644 --- a/src/test/java/org/random/test/RandomOrgClientBasicTest.java +++ b/src/test/java/org/random/test/RandomOrgClientBasicTest.java @@ -23,8 +23,8 @@ public class RandomOrgClientBasicTest { private static RandomOrgClient roc, roc2; - private static final String API_KEY_1 = "YOUR_API_KEY_HERE"; - private static final String API_KEY_2 = "YOUR_API_KEY_HERE"; + private static final String API_KEY_1 = System.getenv("API_KEY"); + private static final String API_KEY_2 = "00000000-0000-0000-0000-000000000000"; private static final int BIT_QUOTA = 1000000; From 9c8bfc7aeaee68934291b68886eb384a9459e2b2 Mon Sep 17 00:00:00 2001 From: Chris Hennick <4961925+Pr0methean@users.noreply.github.com> Date: Thu, 19 Jul 2018 00:05:07 +0000 Subject: [PATCH 10/13] Try again with quotes --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index f727d0c..89e1483 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,4 @@ language: java env: global: - secure: I836FCIFhlVb3IkfujPp/E/4dqosF9PYRhrMbaHk4oFsMfMlHknO5WbGvXilA20FW+YM8k9ww9e/qIxcsndw6NoNfD1u0hdmvWwnaZS4TTmDhcogyHs/haLuPWCwe8agj+/Q+Ly/Y5XaCSeY96sIB9On4MCnhF0yIpH8W3EZp7s/YMrp4ZMZmff53A8317+2/OIWQnlKUb+7N0ROTtvDcWJNGso1c2PgDxKxfMRL57OqLTzmJI2j/PulI2UdggVq3lrex+Ro/sY0LJzBhx8FxQsgthxjBNuhTgj+tZQHm4ha/BVH/WtPjjTNdWAWXBmFMXZl5IfuWwEYqRjkMegKBwbRNkzKYMX0Br3qprVlAfmX/muDSQM/RvRPRWZdWgWmegJrmlT1Sq+Dp/99QlbDPKmJUS66G9JPfEymBqfxTA8/2eAt6dBEmRs8a/IbIucwEG4Kcr//vvjPZ5stweQmRsJn9G51Dlp4/tA3+nmsDrVcK6eXRQ9K/P1btApEDGvcKr8+8/mfJFxlzZcbfXpQjanxpDYa8NqgzVGiRG8s3xg214ayQ1FLsisuEAJjPDrVmcyGq5UW/1FMXN99/G1TUmTegFYqREiYsfJ3QVCPjhqErXFgOROY20J7uIBVtSlQs+K4CjkhwMosZHZrg0vzYqbezxeUnZF7EtOyjWt/BSA= + secure: CIrYJdxxXbyfAiaTY7Xyy13xRKiQIyhxYoKvH3oWpSes1SAUoaHER7fHokVcydquYxRtrtke7OgCGQZ6lAsE8qo/XOVc2bpZh0aZSpj5IrTF2foN5BL+AbXDiqT12+HRrIxT6kpIdhJfkX1GQKNu6TaKqUQBvf7ufSKbvkQmi/jtTNr0By6l5azDEWH5Yr3YYdV5q6a3Hf72Ueb4kEDkVNp1xdGYOMFWGKSE6XvPAwE6LjUIso2/zNK1Va/YYhhm839o6ctbFRSKIJdbSIMpLUYIZiSy+mTZn2bqFmjBXTMNzJmXCC1g4J+NLPnM2aLfsAuwyUofkOPhLQpG5N6luKCUETo5DuJlckV+xsuMo4g1jq3O2s0tnx459Yc8vBbrTw+EL+cIqDLMOqP7U1WBxc4swpveZ4E8vPtkI7/i+wtl7Z3nCad6ea9FNvVP2uE7aHhj+i91ORtWZx2D2M/v08jtrfRtGZvCL3E5csn4+RHxKiA3dEtLRH0OJ7yZJD6CGj9voUcFUwnWxJ82pIK0nrv/nyf9VXo9j+rhQ72zGBZvU95ylIQriNJP54iD/nKhj/woTl6Nx6Q91EZ8QSfeAxm6dIkcgyNa6m/v5HmWvmXx7nLE0EHZuiUcxKmdhy+xU5SBLx+ZNXLdlB03NIcgBLZutNbmzVGYyhHO0pHWoPI= From b30ac652ce61e7f4672b59f1f1099774cd61f02d Mon Sep 17 00:00:00 2001 From: Chris Hennick <4961925+Pr0methean@users.noreply.github.com> Date: Thu, 19 Jul 2018 00:21:26 +0000 Subject: [PATCH 11/13] Bug fix --- src/test/java/org/random/test/RandomOrgRandomBasicTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/org/random/test/RandomOrgRandomBasicTest.java b/src/test/java/org/random/test/RandomOrgRandomBasicTest.java index fe393f1..b0477ca 100644 --- a/src/test/java/org/random/test/RandomOrgRandomBasicTest.java +++ b/src/test/java/org/random/test/RandomOrgRandomBasicTest.java @@ -14,7 +14,7 @@ public class RandomOrgRandomBasicTest { private static RandomOrgRandom random; - private static final String API_KEY_1 = "YOUR_API_KEY_HERE"; + private static final String API_KEY_1 = System.getenv("API_KEY"); @BeforeClass public static void testSetup() { From b9ffac9d04233497ada3ee389cd79f8813989463 Mon Sep 17 00:00:00 2001 From: Chris Hennick <4961925+Pr0methean@users.noreply.github.com> Date: Thu, 19 Jul 2018 00:37:43 +0000 Subject: [PATCH 12/13] Bug fix for high-quota API keys --- src/test/java/org/random/test/RandomOrgClientBasicTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/org/random/test/RandomOrgClientBasicTest.java b/src/test/java/org/random/test/RandomOrgClientBasicTest.java index b72fc78..1033007 100644 --- a/src/test/java/org/random/test/RandomOrgClientBasicTest.java +++ b/src/test/java/org/random/test/RandomOrgClientBasicTest.java @@ -26,7 +26,7 @@ public class RandomOrgClientBasicTest { private static final String API_KEY_1 = System.getenv("API_KEY"); private static final String API_KEY_2 = "00000000-0000-0000-0000-000000000000"; - private static final int BIT_QUOTA = 1000000; + private static final int BIT_QUOTA = 5000000; // Must be for the highest tier @BeforeClass public static void testSetup() { From a5b7821801812559084ed03290b6b5b7dbbf700d Mon Sep 17 00:00:00 2001 From: "whitesource-bolt-for-github[bot]" <42819689+whitesource-bolt-for-github[bot]@users.noreply.github.com> Date: Fri, 5 Jul 2019 21:06:40 +0000 Subject: [PATCH 13/13] Initial WhiteSource configuration file --- .whitesource | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 .whitesource diff --git a/.whitesource b/.whitesource new file mode 100644 index 0000000..f056952 --- /dev/null +++ b/.whitesource @@ -0,0 +1,8 @@ +{ + "generalSettings": { + "shouldScanRepo": true + }, + "checkRunSettings": { + "vulnerableCheckRunConclusionLevel": "failure" + } +} \ No newline at end of file