From 80e09bd05e69c2517fbb7a1573bdd6f515a36fc8 Mon Sep 17 00:00:00 2001 From: Art O Cathain Date: Sun, 29 Jun 2014 12:18:16 +0100 Subject: work in progress --- .../src/test/java/tests/UncachedKeyringTest.java | 37 ++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 OpenKeychain/src/test/java/tests/UncachedKeyringTest.java (limited to 'OpenKeychain/src/test/java') diff --git a/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java b/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java new file mode 100644 index 000000000..05a9c23ef --- /dev/null +++ b/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java @@ -0,0 +1,37 @@ +package tests; + +import org.junit.Assert; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.robolectric.*; +import org.sufficientlysecure.keychain.pgp.UncachedKeyRing; +import org.sufficientlysecure.keychain.testsupport.*; +import org.sufficientlysecure.keychain.testsupport.KeyringBuilder; +import org.sufficientlysecure.keychain.testsupport.TestDataUtil; + +@RunWith(RobolectricTestRunner.class) +@org.robolectric.annotation.Config(emulateSdk = 18) // Robolectric doesn't yet support 19 +public class UncachedKeyringTest { + + @Test + public void testVerifySuccess() throws Exception { + UncachedKeyRing expectedKeyRing = KeyringBuilder.ring2(); +// Uncomment to prove it's working - the createdDate will then be different +// Thread.sleep(1500); + UncachedKeyRing inputKeyRing = KeyringBuilder.ring1(); + new UncachedKeyringTestingHelper().doTestCanonicalize( + inputKeyRing, expectedKeyRing); + } + + /** + * Just testing my own test code. Should really be using a library for this. + */ + @Test + public void testConcat() throws Exception { + byte[] actual = TestDataUtil.concatAll(new byte[]{1}, new byte[]{2,-2}, new byte[]{5},new byte[]{3}); + byte[] expected = new byte[]{1,2,-2,5,3}; + Assert.assertEquals(java.util.Arrays.toString(expected), java.util.Arrays.toString(actual)); + } + + +} -- cgit v1.2.3 From 22108cf4e2ddd74be0d02e6560ac3db0cd547532 Mon Sep 17 00:00:00 2001 From: Art O Cathain Date: Sun, 6 Jul 2014 15:05:20 +0100 Subject: actually canonicalize --- OpenKeychain/src/test/java/tests/UncachedKeyringTest.java | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'OpenKeychain/src/test/java') diff --git a/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java b/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java index 05a9c23ef..e4e98cc5c 100644 --- a/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java +++ b/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java @@ -16,11 +16,8 @@ public class UncachedKeyringTest { @Test public void testVerifySuccess() throws Exception { UncachedKeyRing expectedKeyRing = KeyringBuilder.ring2(); -// Uncomment to prove it's working - the createdDate will then be different -// Thread.sleep(1500); UncachedKeyRing inputKeyRing = KeyringBuilder.ring1(); - new UncachedKeyringTestingHelper().doTestCanonicalize( - inputKeyRing, expectedKeyRing); + new UncachedKeyringTestingHelper().doTestCanonicalize(inputKeyRing, expectedKeyRing); } /** -- cgit v1.2.3 From 9320d2d8a204496ace8f973a59594ccd698a2170 Mon Sep 17 00:00:00 2001 From: Vincent Breitmoser Date: Mon, 7 Jul 2014 18:53:41 +0200 Subject: use KeyringTestHelper.diffKeyrings method for unit test --- .../src/test/java/tests/UncachedKeyringTest.java | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'OpenKeychain/src/test/java') diff --git a/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java b/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java index e4e98cc5c..86089340c 100644 --- a/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java +++ b/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java @@ -5,10 +5,14 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.*; import org.sufficientlysecure.keychain.pgp.UncachedKeyRing; +import org.sufficientlysecure.keychain.service.OperationResultParcel; import org.sufficientlysecure.keychain.testsupport.*; import org.sufficientlysecure.keychain.testsupport.KeyringBuilder; +import org.sufficientlysecure.keychain.testsupport.KeyringTestingHelper; import org.sufficientlysecure.keychain.testsupport.TestDataUtil; +import java.util.HashSet; + @RunWith(RobolectricTestRunner.class) @org.robolectric.annotation.Config(emulateSdk = 18) // Robolectric doesn't yet support 19 public class UncachedKeyringTest { @@ -17,7 +21,20 @@ public class UncachedKeyringTest { public void testVerifySuccess() throws Exception { UncachedKeyRing expectedKeyRing = KeyringBuilder.ring2(); UncachedKeyRing inputKeyRing = KeyringBuilder.ring1(); - new UncachedKeyringTestingHelper().doTestCanonicalize(inputKeyRing, expectedKeyRing); + // new UncachedKeyringTestingHelper().doTestCanonicalize(inputKeyRing, expectedKeyRing); + + OperationResultParcel.OperationLog log = new OperationResultParcel.OperationLog(); + UncachedKeyRing canonicalizedRing = inputKeyRing.canonicalize(log, 0); + + if (canonicalizedRing == null) { + throw new AssertionError("Canonicalization failed; messages: [" + log.toString() + "]"); + } + + HashSet onlyA = new HashSet(); + HashSet onlyB = new HashSet(); + Assert.assertTrue(KeyringTestingHelper.diffKeyrings( + canonicalizedRing.getEncoded(), expectedKeyRing.getEncoded(), onlyA, onlyB)); + } /** -- cgit v1.2.3 From 718acbf954b1318c6a90ba0f9c79e63f398fb498 Mon Sep 17 00:00:00 2001 From: Vincent Breitmoser Date: Wed, 9 Jul 2014 15:53:18 +0200 Subject: put unit tests into external module (CAVEAT) this requires a more up to date version of gradle-android-test-plugin than is currently in the repositories. it must be added to the local maven repo using ./install-custom-gradle-test-plugin.sh before compiling. --- .../src/test/java/tests/PgpDecryptVerifyTest.java | 36 --------- .../test/java/tests/ProviderHelperKeyringTest.java | 86 ---------------------- .../src/test/java/tests/UncachedKeyringTest.java | 51 ------------- 3 files changed, 173 deletions(-) delete mode 100644 OpenKeychain/src/test/java/tests/PgpDecryptVerifyTest.java delete mode 100644 OpenKeychain/src/test/java/tests/ProviderHelperKeyringTest.java delete mode 100644 OpenKeychain/src/test/java/tests/UncachedKeyringTest.java (limited to 'OpenKeychain/src/test/java') diff --git a/OpenKeychain/src/test/java/tests/PgpDecryptVerifyTest.java b/OpenKeychain/src/test/java/tests/PgpDecryptVerifyTest.java deleted file mode 100644 index d759bce05..000000000 --- a/OpenKeychain/src/test/java/tests/PgpDecryptVerifyTest.java +++ /dev/null @@ -1,36 +0,0 @@ -package tests; - -import org.junit.Assert; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.robolectric.*; -import org.openintents.openpgp.OpenPgpSignatureResult; -import org.sufficientlysecure.keychain.testsupport.PgpVerifyTestingHelper; - -@RunWith(RobolectricTestRunner.class) -@org.robolectric.annotation.Config(emulateSdk = 18) // Robolectric doesn't yet support 19 -public class PgpDecryptVerifyTest { - - @Test - public void testVerifySuccess() throws Exception { - - String testFileName = "/sample.txt"; - int expectedSignatureResult = OpenPgpSignatureResult.SIGNATURE_SUCCESS_UNCERTIFIED; - - int status = new PgpVerifyTestingHelper(Robolectric.application).doTestFile(testFileName); - - Assert.assertEquals(expectedSignatureResult, status); - } - - @Test - public void testVerifyFailure() throws Exception { - - String testFileName = "/sample-altered.txt"; - int expectedSignatureResult = OpenPgpSignatureResult.SIGNATURE_ERROR; - - int status = new PgpVerifyTestingHelper(Robolectric.application).doTestFile(testFileName); - - Assert.assertEquals(expectedSignatureResult, status); - } - -} diff --git a/OpenKeychain/src/test/java/tests/ProviderHelperKeyringTest.java b/OpenKeychain/src/test/java/tests/ProviderHelperKeyringTest.java deleted file mode 100644 index 3d48c2f97..000000000 --- a/OpenKeychain/src/test/java/tests/ProviderHelperKeyringTest.java +++ /dev/null @@ -1,86 +0,0 @@ -package tests; - -import java.util.Collections; -import java.util.Arrays; -import java.util.Collection; -import java.util.ArrayList; - -import org.junit.Assert; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.robolectric.*; -import org.openintents.openpgp.OpenPgpSignatureResult; -import org.sufficientlysecure.keychain.testsupport.KeyringTestingHelper; -import org.sufficientlysecure.keychain.testsupport.PgpVerifyTestingHelper; - -@RunWith(RobolectricTestRunner.class) -@org.robolectric.annotation.Config(emulateSdk = 18) // Robolectric doesn't yet support 19 -public class ProviderHelperKeyringTest { - - @Test - public void testSavePublicKeyring() throws Exception { - Assert.assertTrue(new KeyringTestingHelper(Robolectric.application).addKeyring(Collections.singleton( - "/public-key-for-sample.blob" - ))); - } - - @Test - public void testSavePublicKeyringRsa() throws Exception { - Assert.assertTrue(new KeyringTestingHelper(Robolectric.application).addKeyring(prependResourcePath(Arrays.asList( - "000001-006.public_key", - "000002-013.user_id", - "000003-002.sig", - "000004-012.ring_trust", - "000005-002.sig", - "000006-012.ring_trust", - "000007-002.sig", - "000008-012.ring_trust", - "000009-002.sig", - "000010-012.ring_trust", - "000011-002.sig", - "000012-012.ring_trust", - "000013-014.public_subkey", - "000014-002.sig", - "000015-012.ring_trust" - )))); - } - - @Test - public void testSavePublicKeyringDsa() throws Exception { - Assert.assertTrue(new KeyringTestingHelper(Robolectric.application).addKeyring(prependResourcePath(Arrays.asList( - "000016-006.public_key", - "000017-002.sig", - "000018-012.ring_trust", - "000019-013.user_id", - "000020-002.sig", - "000021-012.ring_trust", - "000022-002.sig", - "000023-012.ring_trust", - "000024-014.public_subkey", - "000025-002.sig", - "000026-012.ring_trust" - )))); - } - - @Test - public void testSavePublicKeyringDsa2() throws Exception { - Assert.assertTrue(new KeyringTestingHelper(Robolectric.application).addKeyring(prependResourcePath(Arrays.asList( - "000027-006.public_key", - "000028-002.sig", - "000029-012.ring_trust", - "000030-013.user_id", - "000031-002.sig", - "000032-012.ring_trust", - "000033-002.sig", - "000034-012.ring_trust" - )))); - } - - private static Collection prependResourcePath(Collection files) { - Collection prependedFiles = new ArrayList(); - for (String file: files) { - prependedFiles.add("/extern/OpenPGP-Haskell/tests/data/" + file); - } - return prependedFiles; - } -} diff --git a/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java b/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java deleted file mode 100644 index 86089340c..000000000 --- a/OpenKeychain/src/test/java/tests/UncachedKeyringTest.java +++ /dev/null @@ -1,51 +0,0 @@ -package tests; - -import org.junit.Assert; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.robolectric.*; -import org.sufficientlysecure.keychain.pgp.UncachedKeyRing; -import org.sufficientlysecure.keychain.service.OperationResultParcel; -import org.sufficientlysecure.keychain.testsupport.*; -import org.sufficientlysecure.keychain.testsupport.KeyringBuilder; -import org.sufficientlysecure.keychain.testsupport.KeyringTestingHelper; -import org.sufficientlysecure.keychain.testsupport.TestDataUtil; - -import java.util.HashSet; - -@RunWith(RobolectricTestRunner.class) -@org.robolectric.annotation.Config(emulateSdk = 18) // Robolectric doesn't yet support 19 -public class UncachedKeyringTest { - - @Test - public void testVerifySuccess() throws Exception { - UncachedKeyRing expectedKeyRing = KeyringBuilder.ring2(); - UncachedKeyRing inputKeyRing = KeyringBuilder.ring1(); - // new UncachedKeyringTestingHelper().doTestCanonicalize(inputKeyRing, expectedKeyRing); - - OperationResultParcel.OperationLog log = new OperationResultParcel.OperationLog(); - UncachedKeyRing canonicalizedRing = inputKeyRing.canonicalize(log, 0); - - if (canonicalizedRing == null) { - throw new AssertionError("Canonicalization failed; messages: [" + log.toString() + "]"); - } - - HashSet onlyA = new HashSet(); - HashSet onlyB = new HashSet(); - Assert.assertTrue(KeyringTestingHelper.diffKeyrings( - canonicalizedRing.getEncoded(), expectedKeyRing.getEncoded(), onlyA, onlyB)); - - } - - /** - * Just testing my own test code. Should really be using a library for this. - */ - @Test - public void testConcat() throws Exception { - byte[] actual = TestDataUtil.concatAll(new byte[]{1}, new byte[]{2,-2}, new byte[]{5},new byte[]{3}); - byte[] expected = new byte[]{1,2,-2,5,3}; - Assert.assertEquals(java.util.Arrays.toString(expected), java.util.Arrays.toString(actual)); - } - - -} -- cgit v1.2.3