diff --git a/pgpainless-cli/src/test/java/org/pgpainless/cli/commands/GenerateCertTest.java b/pgpainless-cli/src/test/java/org/pgpainless/cli/commands/GenerateCertTest.java index 87ce74a4..4c0e5fa1 100644 --- a/pgpainless-cli/src/test/java/org/pgpainless/cli/commands/GenerateCertTest.java +++ b/pgpainless-cli/src/test/java/org/pgpainless/cli/commands/GenerateCertTest.java @@ -10,34 +10,22 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import static org.pgpainless.cli.TestUtils.ARMOR_PRIVATE_KEY_HEADER_BYTES; import java.io.ByteArrayOutputStream; -import java.io.File; import java.io.IOException; import java.io.PrintStream; import java.util.Arrays; import com.ginsberg.junit.exit.FailOnSystemExit; -import org.bouncycastle.openpgp.PGPException; import org.bouncycastle.openpgp.PGPSecretKeyRing; -import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; import org.pgpainless.PGPainless; import org.pgpainless.cli.PGPainlessCLI; -import org.pgpainless.cli.TestUtils; import org.pgpainless.key.info.KeyRingInfo; public class GenerateCertTest { - private static File tempDir; - - - @BeforeAll - public static void setup() throws IOException { - tempDir = TestUtils.createTempDirectory(); - } - @Test @FailOnSystemExit - public void testKeyGeneration() throws IOException, PGPException { + public void testKeyGeneration() throws IOException { ByteArrayOutputStream out = new ByteArrayOutputStream(); System.setOut(new PrintStream(out)); PGPainlessCLI.execute("generate-key", "--armor", "Juliet Capulet "); diff --git a/pgpainless-cli/src/test/java/org/pgpainless/cli/commands/SignVerifyTest.java b/pgpainless-cli/src/test/java/org/pgpainless/cli/commands/SignVerifyTest.java index cd2adc89..4c31f7ca 100644 --- a/pgpainless-cli/src/test/java/org/pgpainless/cli/commands/SignVerifyTest.java +++ b/pgpainless-cli/src/test/java/org/pgpainless/cli/commands/SignVerifyTest.java @@ -41,8 +41,6 @@ public class SignVerifyTest { private static File tempDir; private static PrintStream originalSout; - private final String data = "If privacy is outlawed, only outlaws will have privacy.\n"; - @BeforeAll public static void prepare() throws IOException { tempDir = TestUtils.createTempDirectory(); @@ -72,6 +70,7 @@ public class SignVerifyTest { aliceCertOut.close(); // Write test data to disc + String data = "If privacy is outlawed, only outlaws will have privacy.\n"; File dataFile = new File(tempDir, "data"); assertTrue(dataFile.createNewFile()); FileOutputStream dataOut = new FileOutputStream(dataFile); diff --git a/pgpainless-cli/src/test/java/org/pgpainless/cli/misc/SignUsingPublicKeyBehaviorTest.java b/pgpainless-cli/src/test/java/org/pgpainless/cli/misc/SignUsingPublicKeyBehaviorTest.java index ae1148bb..0c6eac2b 100644 --- a/pgpainless-cli/src/test/java/org/pgpainless/cli/misc/SignUsingPublicKeyBehaviorTest.java +++ b/pgpainless-cli/src/test/java/org/pgpainless/cli/misc/SignUsingPublicKeyBehaviorTest.java @@ -15,11 +15,8 @@ import java.io.InputStream; import java.io.OutputStream; import java.io.PrintStream; import java.nio.charset.StandardCharsets; -import java.security.InvalidAlgorithmParameterException; -import java.security.NoSuchAlgorithmException; import com.ginsberg.junit.exit.ExpectSystemExitWithStatus; -import org.bouncycastle.openpgp.PGPException; import org.bouncycastle.util.io.Streams; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; @@ -96,8 +93,6 @@ public class SignUsingPublicKeyBehaviorTest { private static File tempDir; private static PrintStream originalSout; - private final String data = "If privacy is outlawed, only outlaws will have privacy.\n"; - @BeforeAll public static void prepare() throws IOException { tempDir = TestUtils.createTempDirectory(); @@ -105,7 +100,7 @@ public class SignUsingPublicKeyBehaviorTest { @Test @ExpectSystemExitWithStatus(SOPGPException.BadData.EXIT_CODE) - public void testSignatureCreationAndVerification() throws PGPException, InvalidAlgorithmParameterException, NoSuchAlgorithmException, IOException { + public void testSignatureCreationAndVerification() throws IOException { originalSout = System.out; InputStream originalIn = System.in; @@ -124,6 +119,8 @@ public class SignUsingPublicKeyBehaviorTest { aliceCertOut.close(); // Write test data to disc + String data = "If privacy is outlawed, only outlaws will have privacy.\n"; + File dataFile = new File(tempDir, "data"); assertTrue(dataFile.createNewFile()); FileOutputStream dataOut = new FileOutputStream(dataFile); @@ -138,6 +135,8 @@ public class SignUsingPublicKeyBehaviorTest { FileOutputStream sigOut = new FileOutputStream(sigFile); System.setOut(new PrintStream(sigOut)); PGPainlessCLI.execute("sign", "--armor", aliceKeyFile.getAbsolutePath()); + + System.setIn(originalIn); } @AfterAll diff --git a/pgpainless-core/src/main/java/org/pgpainless/policy/Policy.java b/pgpainless-core/src/main/java/org/pgpainless/policy/Policy.java index f89b811c..7bbb131a 100644 --- a/pgpainless-core/src/main/java/org/pgpainless/policy/Policy.java +++ b/pgpainless-core/src/main/java/org/pgpainless/policy/Policy.java @@ -294,7 +294,7 @@ public final class Policy { } /** - * Return true if the the given hash algorithm is acceptable by this policy. + * Return true if the given hash algorithm is acceptable by this policy. * * @param hashAlgorithm hash algorithm * @return true if the hash algorithm is acceptable, false otherwise diff --git a/pgpainless-core/src/main/java/org/pgpainless/signature/consumer/SignatureValidator.java b/pgpainless-core/src/main/java/org/pgpainless/signature/consumer/SignatureValidator.java index 8d4f682e..3bd059a2 100644 --- a/pgpainless-core/src/main/java/org/pgpainless/signature/consumer/SignatureValidator.java +++ b/pgpainless-core/src/main/java/org/pgpainless/signature/consumer/SignatureValidator.java @@ -213,8 +213,8 @@ public abstract class SignatureValidator { * @return policy */ private static Policy.HashAlgorithmPolicy getHashAlgorithmPolicyForSignature(PGPSignature signature, Policy policy) { - Policy.HashAlgorithmPolicy hashAlgorithmPolicy = null; SignatureType type = SignatureType.valueOf(signature.getSignatureType()); + Policy.HashAlgorithmPolicy hashAlgorithmPolicy; if (type == SignatureType.CERTIFICATION_REVOCATION || type == SignatureType.KEY_REVOCATION || type == SignatureType.SUBKEY_REVOCATION) { hashAlgorithmPolicy = policy.getRevocationSignatureHashAlgorithmPolicy(); } else { @@ -385,21 +385,6 @@ public abstract class SignatureValidator { return new SignatureValidator() { @Override public void verify(PGPSignature signature) throws SignatureValidationException { - // TODO: Uncommenting the code below would mean that fake issuers would become a problem for sig verification - /* - long keyId = signature.getKeyID(); - if (keyId == 0) { - OpenPgpV4Fingerprint fingerprint = SignatureSubpacketsUtil.getIssuerFingerprintAsOpenPgpV4Fingerprint(signature); - if (fingerprint == null) { - throw new SignatureValidationException("Signature does not contain an issuer-id, neither an issuer-fingerprint subpacket."); - } - keyId = fingerprint.getKeyId(); - } - if (keyId != key.getKeyID()) { - throw new IllegalArgumentException("Signature was not created using key " + Long.toHexString(key.getKeyID())); - } - */ - Date keyCreationTime = key.getCreationTime(); Date signatureCreationTime = signature.getCreationTime(); @@ -505,7 +490,7 @@ public abstract class SignatureValidator { public void verify(PGPSignature signature) throws SignatureValidationException { try { signature.init(ImplementationFactory.getInstance().getPGPContentVerifierBuilderProvider(), signer); - boolean valid = false; + boolean valid; if (signer.getKeyID() != signee.getKeyID()) { valid = signature.verifyCertification(signer, signee); } else { diff --git a/sop-java-picocli/src/test/java/sop/cli/picocli/commands/VersionCmdTest.java b/sop-java-picocli/src/test/java/sop/cli/picocli/commands/VersionCmdTest.java index 6a4d628b..98ea58e2 100644 --- a/sop-java-picocli/src/test/java/sop/cli/picocli/commands/VersionCmdTest.java +++ b/sop-java-picocli/src/test/java/sop/cli/picocli/commands/VersionCmdTest.java @@ -18,12 +18,11 @@ import sop.operation.Version; public class VersionCmdTest { - private SOP sop; private Version version; @BeforeEach public void mockComponents() { - sop = mock(SOP.class); + SOP sop = mock(SOP.class); version = mock(Version.class); when(version.getName()).thenReturn("MockSop"); when(version.getVersion()).thenReturn("1.0");