Review all @Nullable return values

- Most methods now return an Optional instead of a null value
- Reviewed all Collection return values. They may now be empty, but
  never null.
This commit is contained in:
Richard Körber
2023-05-06 17:08:20 +02:00
parent 18e56c9d4f
commit 1907545e5d
36 changed files with 345 additions and 383 deletions

View File

@@ -23,6 +23,7 @@ import java.security.KeyPair;
import org.junit.jupiter.api.Test;
import org.shredzone.acme4j.AccountBuilder;
import org.shredzone.acme4j.Authorization;
import org.shredzone.acme4j.Certificate;
import org.shredzone.acme4j.Order;
import org.shredzone.acme4j.Session;
import org.shredzone.acme4j.Status;
@@ -62,8 +63,7 @@ public class OrderHttpIT {
var order = account.newOrder().domain(TEST_DOMAIN).create();
for (var auth : order.getAuthorizations()) {
var challenge = auth.findChallenge(Http01Challenge.class);
assertThat(challenge).isNotNull();
var challenge = auth.findChallenge(Http01Challenge.class).orElseThrow();
client.httpAddToken(challenge.getToken(), challenge.getAuthorization());
@@ -93,9 +93,9 @@ public class OrderHttpIT {
.conditionEvaluationListener(cond -> updateOrder(order))
.untilAsserted(() -> assertThat(order.getStatus()).isNotIn(Status.PENDING, Status.PROCESSING));
var certificate = order.getCertificate();
var cert = certificate.getCertificate();
assertThat(cert).isNotNull();
var cert = order.getCertificate()
.map(Certificate::getCertificate)
.orElseThrow();
assertThat(cert.getNotAfter()).isNotNull();
assertThat(cert.getNotBefore()).isNotNull();
assertThat(cert.getSubjectX500Principal().getName()).contains("CN=" + TEST_DOMAIN);

View File

@@ -56,8 +56,7 @@ public class OrderIT extends PebbleITBase {
orderCertificate(TEST_DOMAIN, auth -> {
var client = getBammBammClient();
var challenge = auth.findChallenge(Http01Challenge.class);
assertThat(challenge).isNotNull();
var challenge = auth.findChallenge(Http01Challenge.class).orElseThrow();
client.httpAddToken(challenge.getToken(), challenge.getAuthorization());
@@ -75,8 +74,7 @@ public class OrderIT extends PebbleITBase {
orderCertificate(TEST_DOMAIN, auth -> {
var client = getBammBammClient();
var challenge = auth.findChallenge(Dns01Challenge.class);
assertThat(challenge).isNotNull();
var challenge = auth.findChallenge(Dns01Challenge.class).orElseThrow();
var challengeDomainName = Dns01Challenge.toRRName(auth.getIdentifier());
@@ -96,8 +94,7 @@ public class OrderIT extends PebbleITBase {
orderCertificate(TEST_DOMAIN, auth -> {
var client = getBammBammClient();
var challenge = auth.findChallenge(TlsAlpn01Challenge.class);
assertThat(challenge).isNotNull();
var challenge = auth.findChallenge(TlsAlpn01Challenge.class).orElseThrow();
client.tlsAlpnAddCertificate(
auth.getIdentifier().getDomain(),
@@ -117,8 +114,7 @@ public class OrderIT extends PebbleITBase {
orderCertificate(TEST_DOMAIN, auth -> {
var client = getBammBammClient();
var challenge = auth.findChallenge(Http01Challenge.class);
assertThat(challenge).isNotNull();
var challenge = auth.findChallenge(Http01Challenge.class).orElseThrow();
client.httpAddToken(challenge.getToken(), challenge.getAuthorization());
@@ -159,8 +155,8 @@ public class OrderIT extends PebbleITBase {
.notBefore(notBefore)
.notAfter(notAfter)
.create();
assertThat(order.getNotBefore()).isEqualTo(notBefore);
assertThat(order.getNotAfter()).isEqualTo(notAfter);
assertThat(order.getNotBefore().orElseThrow()).isEqualTo(notBefore);
assertThat(order.getNotAfter().orElseThrow()).isEqualTo(notAfter);
assertThat(order.getStatus()).isEqualTo(Status.PENDING);
for (var auth : order.getAuthorizations()) {
@@ -199,7 +195,7 @@ public class OrderIT extends PebbleITBase {
assertThat(order.getStatus()).isEqualTo(Status.VALID);
var certificate = order.getCertificate();
var certificate = order.getCertificate().orElseThrow();
var cert = certificate.getCertificate();
assertThat(cert).isNotNull();
assertThat(cert.getNotBefore().toInstant()).isEqualTo(notBefore);

View File

@@ -25,6 +25,7 @@ import java.time.temporal.ChronoUnit;
import org.bouncycastle.asn1.x509.GeneralName;
import org.junit.jupiter.api.Test;
import org.shredzone.acme4j.AccountBuilder;
import org.shredzone.acme4j.Certificate;
import org.shredzone.acme4j.Session;
import org.shredzone.acme4j.Status;
import org.shredzone.acme4j.challenge.Dns01Challenge;
@@ -64,8 +65,8 @@ public class OrderWildcardIT extends PebbleITBase {
.notBefore(notBefore)
.notAfter(notAfter)
.create();
assertThat(order.getNotBefore()).isEqualTo(notBefore);
assertThat(order.getNotAfter()).isEqualTo(notAfter);
assertThat(order.getNotBefore().orElseThrow()).isEqualTo(notBefore);
assertThat(order.getNotAfter().orElseThrow()).isEqualTo(notAfter);
assertThat(order.getStatus()).isEqualTo(Status.PENDING);
for (var auth : order.getAuthorizations()) {
@@ -76,8 +77,7 @@ public class OrderWildcardIT extends PebbleITBase {
continue;
}
var challenge = auth.findChallenge(Dns01Challenge.class);
assertThat(challenge).isNotNull();
var challenge = auth.findChallenge(Dns01Challenge.class).orElseThrow();
var challengeDomainName = Dns01Challenge.toRRName(TEST_DOMAIN);
@@ -112,8 +112,9 @@ public class OrderWildcardIT extends PebbleITBase {
order.getStatus()).isNotIn(Status.PENDING, Status.PROCESSING));
var certificate = order.getCertificate();
var cert = certificate.getCertificate();
var cert = order.getCertificate()
.map(Certificate::getCertificate)
.orElseThrow();
assertThat(cert).isNotNull();
assertThat(cert.getNotAfter()).isNotEqualTo(notBefore);
assertThat(cert.getNotBefore()).isNotEqualTo(notAfter);

View File

@@ -44,8 +44,9 @@ public class SessionIT extends PebbleITBase {
var meta = session.getMetadata();
assertThat(meta).isNotNull();
assertThat(meta.getTermsOfService()).isEqualTo(URI.create("data:text/plain,Do%20what%20thou%20wilt"));
assertThat(meta.getWebsite()).isNull();
assertThat(meta.getTermsOfService().orElseThrow())
.isEqualTo(URI.create("data:text/plain,Do%20what%20thou%20wilt"));
assertThat(meta.getWebsite()).isEmpty();
assertThat(meta.getCaaIdentities()).isEmpty();
assertThatJson(meta.getJSON().toString()).isEqualTo("{"
+ "'termsOfService': 'data:text/plain,Do%20what%20thou%20wilt',"