Skip to content

Commit 47f78a7

Browse files
author
Alexey Semenyuk
committed
8354990: Improve negative tests coverage for jpackage signing
8354989: Bug in MacCertificate class Reviewed-by: almatvee
1 parent 9a0cff6 commit 47f78a7

File tree

7 files changed

+823
-241
lines changed

7 files changed

+823
-241
lines changed

src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacAppBundler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ public MacAppBundler() {
7474
}
7575

7676
if (result != null) {
77-
MacCertificate certificate = new MacCertificate(result);
77+
MacCertificate certificate = new MacCertificate(result, keychain);
7878

7979
if (!certificate.isValid()) {
8080
Log.error(MessageFormat.format(I18N.getString(

src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacCertificate.java

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2016, 2023, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2016, 2025, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* This code is free software; you can redistribute it and/or modify it
@@ -39,21 +39,25 @@
3939
import java.util.ArrayList;
4040
import java.util.Calendar;
4141
import java.util.Date;
42+
import java.util.HexFormat;
4243
import java.util.List;
4344
import java.util.Locale;
44-
import java.util.HexFormat;
45+
import java.util.Objects;
46+
import java.util.Optional;
4547
import java.util.regex.Matcher;
4648
import java.util.regex.Pattern;
4749

4850
public final class MacCertificate {
4951
private final String certificate;
52+
private final Optional<String> keychainName;
5053

51-
public MacCertificate(String certificate) {
52-
this.certificate = certificate;
54+
public MacCertificate(String certificate, String keychainName) {
55+
this.certificate = Objects.requireNonNull(certificate);
56+
this.keychainName = Optional.ofNullable(keychainName);
5357
}
5458

5559
public boolean isValid() {
56-
return verifyCertificate(this.certificate);
60+
return verifyCertificate();
5761
}
5862

5963
public static String findCertificateKey(String keyPrefix, String teamName,
@@ -295,15 +299,15 @@ private Date findCertificateDate(String filename) {
295299
return result;
296300
}
297301

298-
private boolean verifyCertificate(String certificate) {
302+
private boolean verifyCertificate() {
299303
boolean result = false;
300304

301305
try {
302306
Path file = null;
303307
Date certificateDate = null;
304308

305309
try {
306-
file = getFindCertificateOutputPEM(certificate, null);
310+
file = getFindCertificateOutputPEM(certificate, keychainName.orElse(null));
307311

308312
if (file != null) {
309313
certificateDate = findCertificateDate(

src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacPkgBundler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ public class MacPkgBundler extends MacBaseInstallerBundler {
130130
}
131131

132132
if (result != null) {
133-
MacCertificate certificate = new MacCertificate(result);
133+
MacCertificate certificate = new MacCertificate(result, keychain);
134134

135135
if (!certificate.isValid()) {
136136
Log.error(MessageFormat.format(

0 commit comments

Comments
 (0)