diff options
Diffstat (limited to 'OpenKeychain/src/test/java/org/sufficientlysecure/keychain/pgp')
-rw-r--r-- | OpenKeychain/src/test/java/org/sufficientlysecure/keychain/pgp/PgpKeyOperationTest.java | 53 | ||||
-rw-r--r-- | OpenKeychain/src/test/java/org/sufficientlysecure/keychain/pgp/SplitUserIdTest.java (renamed from OpenKeychain/src/test/java/org/sufficientlysecure/keychain/pgp/KeyRingTest.java) | 37 |
2 files changed, 40 insertions, 50 deletions
diff --git a/OpenKeychain/src/test/java/org/sufficientlysecure/keychain/pgp/PgpKeyOperationTest.java b/OpenKeychain/src/test/java/org/sufficientlysecure/keychain/pgp/PgpKeyOperationTest.java index 19fb0345b..b87bc1cfb 100644 --- a/OpenKeychain/src/test/java/org/sufficientlysecure/keychain/pgp/PgpKeyOperationTest.java +++ b/OpenKeychain/src/test/java/org/sufficientlysecure/keychain/pgp/PgpKeyOperationTest.java @@ -45,7 +45,6 @@ import org.sufficientlysecure.keychain.WorkaroundBuildConfig; import org.sufficientlysecure.keychain.operations.results.OperationResult.LogType; import org.sufficientlysecure.keychain.operations.results.OperationResult.OperationLog; import org.sufficientlysecure.keychain.operations.results.PgpEditKeyResult; -import org.sufficientlysecure.keychain.pgp.CanonicalizedSecretKey.SecretKeyType; import org.sufficientlysecure.keychain.service.SaveKeyringParcel; import org.sufficientlysecure.keychain.service.SaveKeyringParcel.Algorithm; import org.sufficientlysecure.keychain.service.SaveKeyringParcel.ChangeUnlockParcel; @@ -877,7 +876,7 @@ public class PgpKeyOperationTest { long keyId = KeyringTestingHelper.getSubkeyId(ringSecurityToken, 1); - { // moveKeyToSecurityToken should return a pending NFC_MOVE_KEY_TO_CARD result when presented with the RSA-2048 + { // moveKeyToSecurityToken should return a pending SECURITY_TOKEN_MOVE_KEY_TO_CARD result when presented with the RSA-2048 // key, and then make key divert-to-card when it gets a serial in the cryptoInputParcel. parcelSecurityToken.reset(); parcelSecurityToken.mChangeSubKeys.add(new SubkeyChange(keyId, false, true)); @@ -887,8 +886,8 @@ public class PgpKeyOperationTest { PgpKeyOperation op = new PgpKeyOperation(null); PgpEditKeyResult result = op.modifySecretKeyRing(secretRing, cryptoInput, parcelSecurityToken); Assert.assertTrue("moveKeyToSecurityToken operation should be pending", result.isPending()); - Assert.assertEquals("required input should be RequiredInputType.NFC_MOVE_KEY_TO_CARD", - result.getRequiredInputParcel().mType, RequiredInputType.NFC_MOVE_KEY_TO_CARD); + Assert.assertEquals("required input should be RequiredInputType.SECURITY_TOKEN_MOVE_KEY_TO_CARD", + result.getRequiredInputParcel().mType, RequiredInputType.SECURITY_TOKEN_MOVE_KEY_TO_CARD); // Create a cryptoInputParcel that matches what the SecurityTokenOperationActivity would return. byte[] keyIdBytes = new byte[8]; @@ -921,8 +920,8 @@ public class PgpKeyOperationTest { PgpKeyOperation op = new PgpKeyOperation(null); PgpEditKeyResult result = op.modifySecretKeyRing(secretRing, cryptoInput, parcelSecurityToken); Assert.assertTrue("moveKeyToSecurityToken operation should be pending", result.isPending()); - Assert.assertEquals("required input should be RequiredInputType.NFC_SIGN", - RequiredInputType.NFC_SIGN, result.getRequiredInputParcel().mType); + Assert.assertEquals("required input should be RequiredInputType.SECURITY_TOKEN_SIGN", + RequiredInputType.SECURITY_TOKEN_SIGN, result.getRequiredInputParcel().mType); } } @@ -1232,47 +1231,7 @@ public class PgpKeyOperationTest { } @Test - public void testUnlockPin() throws Exception { - - Passphrase pin = new Passphrase("5235125"); - - // change passphrase to a pin type - parcel.mNewUnlock = new ChangeUnlockParcel(null, pin); - UncachedKeyRing modified = applyModificationWithChecks(parcel, ring, onlyA, onlyB); - - Assert.assertEquals("exactly three packets should have been added (the secret keys + notation packet)", - 3, onlyA.size()); - Assert.assertEquals("exactly four packets should have been added (the secret keys + notation packet)", - 4, onlyB.size()); - - RawPacket dkSig = onlyB.get(1); - Assert.assertEquals("second modified packet should be notation data", - PacketTags.SIGNATURE, dkSig.tag); - - // check that notation data contains pin - CanonicalizedSecretKeyRing secretRing = new CanonicalizedSecretKeyRing( - modified.getEncoded(), false, 0); - Assert.assertEquals("secret key type should be 'pin' after this", - SecretKeyType.PIN, - secretRing.getSecretKey().getSecretKeyTypeSuperExpensive()); - - // need to sleep for a sec, so the timestamp changes for notation data - Thread.sleep(1000); - - { - parcel.mNewUnlock = new ChangeUnlockParcel(new Passphrase("phrayse"), null); - applyModificationWithChecks(parcel, modified, onlyA, onlyB, new CryptoInputParcel(pin), true, false); - - Assert.assertEquals("exactly four packets should have been removed (the secret keys + notation packet)", - 4, onlyA.size()); - Assert.assertEquals("exactly three packets should have been added (no more notation packet)", - 3, onlyB.size()); - } - - } - - @Test - public void testRestricted () throws Exception { + public void testRestricted() throws Exception { CanonicalizedSecretKeyRing secretRing = new CanonicalizedSecretKeyRing(ring.getEncoded(), false, 0); diff --git a/OpenKeychain/src/test/java/org/sufficientlysecure/keychain/pgp/KeyRingTest.java b/OpenKeychain/src/test/java/org/sufficientlysecure/keychain/pgp/SplitUserIdTest.java index 64316b2a6..97feeea7b 100644 --- a/OpenKeychain/src/test/java/org/sufficientlysecure/keychain/pgp/KeyRingTest.java +++ b/OpenKeychain/src/test/java/org/sufficientlysecure/keychain/pgp/SplitUserIdTest.java @@ -28,7 +28,7 @@ import org.sufficientlysecure.keychain.WorkaroundBuildConfig; @RunWith(RobolectricGradleTestRunner.class) @Config(constants = WorkaroundBuildConfig.class, sdk = 21, manifest = "src/main/AndroidManifest.xml") -public class KeyRingTest { +public class SplitUserIdTest { @Test public void splitCompleteUserIdShouldReturnAll3Components() throws Exception { @@ -49,9 +49,40 @@ public class KeyRingTest { @Test public void splitUserIdWithAllButEmailShouldReturnNameAndComment() throws Exception { KeyRing.UserId info = KeyRing.splitUserId("Max Mustermann (this is a comment)"); - Assert.assertEquals(info.name, "Max Mustermann"); - Assert.assertEquals(info.comment, "this is a comment"); + Assert.assertEquals("Max Mustermann", info.name); + Assert.assertEquals("this is a comment", info.comment); + Assert.assertNull(info.email); + } + + @Test + public void splitUserIdWithCommentAndEmailShouldReturnCommentAndEmail() throws Exception { + KeyRing.UserId info = KeyRing.splitUserId(" (this is a comment) <max@example.com>"); + Assert.assertNull(info.name); + Assert.assertEquals("this is a comment", info.comment); + Assert.assertEquals("max@example.com", info.email); + } + + @Test + public void splitUserIdWithEmailShouldReturnEmail() throws Exception { + KeyRing.UserId info = KeyRing.splitUserId("max@example.com"); + Assert.assertNull(info.name); + Assert.assertNull(info.comment); + Assert.assertEquals("max@example.com", info.email); + } + + @Test + public void splitUserIdWithNameShouldReturnName() throws Exception { + KeyRing.UserId info = KeyRing.splitUserId("Max Mustermann"); + Assert.assertEquals("Max Mustermann", info.name); + Assert.assertNull(info.comment); Assert.assertNull(info.email); } + @Test + public void splitUserIdWithCommentShouldReturnComment() throws Exception { + KeyRing.UserId info = KeyRing.splitUserId(" (this is a comment)"); + Assert.assertNull(info.name); + Assert.assertEquals("this is a comment", info.comment); + Assert.assertNull(info.email); + } }
\ No newline at end of file |