Even more tests

This commit is contained in:
Paul Schaub 2023-01-21 21:17:57 +01:00
parent 9cf6301b8c
commit e73c7e5f91
Signed by: vanitasvitae
GPG key ID: 62BEE9264BF17311
3 changed files with 31 additions and 7 deletions

View file

@ -228,4 +228,16 @@ public class ExternalDetachedSignVerifyRoundTripTest extends AbstractExternalSOP
.isEmpty()); .isEmpty());
} }
@Test
public void verifyMissingCertCausesMissingArg() {
ignoreIf("PGPainless-SOP", Is.geq, "0.0.0"); // PGPainless uses picocli which throws
// UNSUPPORTED_OPTION for missing arg
byte[] message = TestData.PLAINTEXT.getBytes(StandardCharsets.UTF_8);
assertThrows(SOPGPException.MissingArg.class, () ->
getSop().verify()
.signatures(TestData.ALICE_DETACHED_SIGNED_MESSAGE.getBytes(StandardCharsets.UTF_8))
.data(message));
}
} }

View file

@ -30,7 +30,7 @@ public class ExternalEncryptDecryptRoundTripTest extends AbstractExternalSOPTest
@Test @Test
public void encryptDecryptRoundTripPasswordTest() throws IOException { public void encryptDecryptRoundTripPasswordTest() throws IOException {
byte[] message = "Hello, World!\n".getBytes(StandardCharsets.UTF_8); byte[] message = TestData.PLAINTEXT.getBytes(StandardCharsets.UTF_8);
byte[] ciphertext = getSop().encrypt() byte[] ciphertext = getSop().encrypt()
.withPassword("sw0rdf1sh") .withPassword("sw0rdf1sh")
.plaintext(message) .plaintext(message)
@ -47,7 +47,7 @@ public class ExternalEncryptDecryptRoundTripTest extends AbstractExternalSOPTest
@Test @Test
public void encryptDecryptRoundTripAliceTest() throws IOException { public void encryptDecryptRoundTripAliceTest() throws IOException {
byte[] message = "Hello, World!\n".getBytes(StandardCharsets.UTF_8); byte[] message = TestData.PLAINTEXT.getBytes(StandardCharsets.UTF_8);
byte[] ciphertext = getSop().encrypt() byte[] ciphertext = getSop().encrypt()
.withCert(TestData.ALICE_CERT.getBytes(StandardCharsets.UTF_8)) .withCert(TestData.ALICE_CERT.getBytes(StandardCharsets.UTF_8))
.plaintext(message) .plaintext(message)
@ -67,7 +67,7 @@ public class ExternalEncryptDecryptRoundTripTest extends AbstractExternalSOPTest
@Test @Test
public void encryptDecryptRoundTripBobTest() throws IOException { public void encryptDecryptRoundTripBobTest() throws IOException {
byte[] message = "Hello, World!\n".getBytes(StandardCharsets.UTF_8); byte[] message = TestData.PLAINTEXT.getBytes(StandardCharsets.UTF_8);
byte[] ciphertext = getSop().encrypt() byte[] ciphertext = getSop().encrypt()
.withCert(TestData.BOB_CERT.getBytes(StandardCharsets.UTF_8)) .withCert(TestData.BOB_CERT.getBytes(StandardCharsets.UTF_8))
.plaintext(message) .plaintext(message)
@ -86,7 +86,7 @@ public class ExternalEncryptDecryptRoundTripTest extends AbstractExternalSOPTest
public void encryptDecryptRoundTripCarolTest() throws IOException { public void encryptDecryptRoundTripCarolTest() throws IOException {
ignoreIf("sqop", Is.geq, "0.0.0"); // sqop reports cert not encryption capable ignoreIf("sqop", Is.geq, "0.0.0"); // sqop reports cert not encryption capable
byte[] message = "Hello, World!\n".getBytes(StandardCharsets.UTF_8); byte[] message = TestData.PLAINTEXT.getBytes(StandardCharsets.UTF_8);
byte[] ciphertext = getSop().encrypt() byte[] ciphertext = getSop().encrypt()
.withCert(TestData.CAROL_CERT.getBytes(StandardCharsets.UTF_8)) .withCert(TestData.CAROL_CERT.getBytes(StandardCharsets.UTF_8))
.plaintext(message) .plaintext(message)
@ -105,7 +105,7 @@ public class ExternalEncryptDecryptRoundTripTest extends AbstractExternalSOPTest
public void encryptNoArmorThenArmorThenDecryptRoundTrip() throws IOException { public void encryptNoArmorThenArmorThenDecryptRoundTrip() throws IOException {
ignoreIf("sqop", Is.leq, "0.26.1"); // Invalid data type ignoreIf("sqop", Is.leq, "0.26.1"); // Invalid data type
byte[] message = "Hello, World!\n".getBytes(StandardCharsets.UTF_8); byte[] message = TestData.PLAINTEXT.getBytes(StandardCharsets.UTF_8);
byte[] ciphertext = getSop().encrypt() byte[] ciphertext = getSop().encrypt()
.withCert(TestData.ALICE_CERT.getBytes(StandardCharsets.UTF_8)) .withCert(TestData.ALICE_CERT.getBytes(StandardCharsets.UTF_8))
.noArmor() .noArmor()
@ -127,7 +127,7 @@ public class ExternalEncryptDecryptRoundTripTest extends AbstractExternalSOPTest
@Test @Test
public void encryptSignDecryptVerifyRoundTripAliceTest() throws IOException { public void encryptSignDecryptVerifyRoundTripAliceTest() throws IOException {
byte[] message = "Hello, World!\n".getBytes(StandardCharsets.UTF_8); byte[] message = TestData.PLAINTEXT.getBytes(StandardCharsets.UTF_8);
byte[] ciphertext = getSop().encrypt() byte[] ciphertext = getSop().encrypt()
.withCert(TestData.ALICE_CERT.getBytes(StandardCharsets.UTF_8)) .withCert(TestData.ALICE_CERT.getBytes(StandardCharsets.UTF_8))
.signWith(TestData.ALICE_KEY.getBytes(StandardCharsets.UTF_8)) .signWith(TestData.ALICE_KEY.getBytes(StandardCharsets.UTF_8))
@ -152,7 +152,7 @@ public class ExternalEncryptDecryptRoundTripTest extends AbstractExternalSOPTest
@Test @Test
public void encryptSignAsTextDecryptVerifyRoundTripAliceTest() throws IOException { public void encryptSignAsTextDecryptVerifyRoundTripAliceTest() throws IOException {
byte[] message = "Hello, World!\n".getBytes(StandardCharsets.UTF_8); byte[] message = TestData.PLAINTEXT.getBytes(StandardCharsets.UTF_8);
byte[] ciphertext = getSop().encrypt() byte[] ciphertext = getSop().encrypt()
.withCert(TestData.ALICE_CERT.getBytes(StandardCharsets.UTF_8)) .withCert(TestData.ALICE_CERT.getBytes(StandardCharsets.UTF_8))
.signWith(TestData.ALICE_KEY.getBytes(StandardCharsets.UTF_8)) .signWith(TestData.ALICE_KEY.getBytes(StandardCharsets.UTF_8))
@ -278,4 +278,13 @@ public class ExternalEncryptDecryptRoundTripTest extends AbstractExternalSOPTest
} }
}); });
} }
@Test
public void missingArgsTest() throws IOException {
byte[] message = TestData.PLAINTEXT.getBytes(StandardCharsets.UTF_8);
assertThrows(SOPGPException.MissingArg.class, () -> getSop().encrypt()
.plaintext(message)
.getBytes());
}
} }

View file

@ -35,6 +35,7 @@ public class ExternalExtractCertTest extends AbstractExternalSOPTest {
@Test @Test
public void extractAliceCertFromAliceKeyTest() throws IOException { public void extractAliceCertFromAliceKeyTest() throws IOException {
ignoreIf("PGPainless-SOP", Is.geq, "0.0.0"); // PGPainless uses old CTB
byte[] armoredCert = getSop().extractCert() byte[] armoredCert = getSop().extractCert()
.key(TestData.ALICE_KEY.getBytes(StandardCharsets.UTF_8)) .key(TestData.ALICE_KEY.getBytes(StandardCharsets.UTF_8))
.getBytes(); .getBytes();
@ -43,6 +44,7 @@ public class ExternalExtractCertTest extends AbstractExternalSOPTest {
@Test @Test
public void extractBobsCertFromBobsKeyTest() throws IOException { public void extractBobsCertFromBobsKeyTest() throws IOException {
ignoreIf("PGPainless-SOP", Is.geq, "0.0.0"); // PGPainless uses old CTB
byte[] armoredCert = getSop().extractCert() byte[] armoredCert = getSop().extractCert()
.key(TestData.BOB_KEY.getBytes(StandardCharsets.UTF_8)) .key(TestData.BOB_KEY.getBytes(StandardCharsets.UTF_8))
.getBytes(); .getBytes();
@ -51,6 +53,7 @@ public class ExternalExtractCertTest extends AbstractExternalSOPTest {
@Test @Test
public void extractCarolsCertFromCarolsKeyTest() throws IOException { public void extractCarolsCertFromCarolsKeyTest() throws IOException {
ignoreIf("PGPainless-SOP", Is.geq, "0.0.0"); // PGPainless uses old CTB
byte[] armoredCert = getSop().extractCert() byte[] armoredCert = getSop().extractCert()
.key(TestData.CAROL_KEY.getBytes(StandardCharsets.UTF_8)) .key(TestData.CAROL_KEY.getBytes(StandardCharsets.UTF_8))
.getBytes(); .getBytes();