Fix unreliable unit test

Fixes #389
This commit is contained in:
Paul Schaub 2023-07-07 11:07:14 +02:00
parent cac500874a
commit 30481cd510
Signed by: vanitasvitae
GPG Key ID: 62BEE9264BF17311
3 changed files with 17 additions and 1 deletions

View File

@ -83,6 +83,12 @@ public class SecretKeyRingEditor implements SecretKeyRingEditorInterface {
this.referenceTime = referenceTime;
}
@Nonnull
@Override
public Date getReferenceTime() {
return referenceTime;
}
@Override
public SecretKeyRingEditorInterface addUserId(
@Nonnull CharSequence userId,

View File

@ -29,6 +29,14 @@ import org.pgpainless.util.selection.userid.SelectUserId;
public interface SecretKeyRingEditorInterface {
/**
* Return the editors reference time.
*
* @return reference time
*/
@Nonnull
Date getReferenceTime();
/**
* Add a user-id to the key ring.
*

View File

@ -76,7 +76,9 @@ public class RefuseToAddWeakSubkeyTest {
PGPainless.getPolicy().setPublicKeyAlgorithmPolicy(new Policy.PublicKeyAlgorithmPolicy(minimalBitStrengths));
SecretKeyRingEditorInterface editor = PGPainless.modifyKeyRing(secretKeys);
KeySpec spec = KeySpec.getBuilder(KeyType.RSA(RsaLength._1024), KeyFlag.ENCRYPT_COMMS).build();
KeySpec spec = KeySpec.getBuilder(KeyType.RSA(RsaLength._1024), KeyFlag.ENCRYPT_COMMS)
.setKeyCreationDate(editor.getReferenceTime()) // The key gets created after we instantiate the editor.
.build();
secretKeys = editor.addSubKey(spec, Passphrase.emptyPassphrase(), SecretKeyRingProtector.unprotectedKeys())
.done();