1
0
Fork 0
mirror of https://github.com/pgpainless/pgpainless.git synced 2024-11-25 22:02:05 +01:00

add unit test to read decryption stream beyond end

This commit is contained in:
Daniel Gultsch 2023-11-26 10:55:47 +01:00 committed by Paul Schaub
parent 4b474b4683
commit c61a129e08
Signed by: vanitasvitae
GPG key ID: 62BEE9264BF17311

View file

@ -83,6 +83,24 @@ public class DecryptAndVerifyMessageTest {
assertEquals(new SubkeyIdentifier(TestKeys.JULIET_FINGERPRINT), metadata.getDecryptionKey()); assertEquals(new SubkeyIdentifier(TestKeys.JULIET_FINGERPRINT), metadata.getDecryptionKey());
} }
@TestTemplate
@ExtendWith(TestAllImplementations.class)
public void decryptMessageAndReadBeyondEndTest() throws Exception {
final String encryptedMessage = TestKeys.MSG_SIGN_CRYPT_JULIET_JULIET;
final ConsumerOptions options = new ConsumerOptions()
.addDecryptionKey(juliet)
.addVerificationCert(KeyRingUtils.publicKeyRingFrom(juliet));
try (final DecryptionStream decryptor = PGPainless.decryptAndOrVerify()
.onInputStream(new ByteArrayInputStream(encryptedMessage.getBytes()))
.withOptions(options);
final ByteArrayOutputStream toPlain = new ByteArrayOutputStream()) {
Streams.pipeAll(decryptor, toPlain);
assertEquals(-1, decryptor.read());
}
}
@TestTemplate @TestTemplate
@ExtendWith(TestAllImplementations.class) @ExtendWith(TestAllImplementations.class)
public void decryptMessageAndVerifySignatureByteByByteTest() throws Exception { public void decryptMessageAndVerifySignatureByteByByteTest() throws Exception {