From f3b7286eafd219e8364c74b15224bfdbbc874359 Mon Sep 17 00:00:00 2001 From: Paul Schaub Date: Tue, 28 Dec 2021 01:35:12 +0100 Subject: [PATCH] Introduce and use DateUtil.toSecondsPrecision --- .../src/main/java/org/pgpainless/util/DateUtil.java | 10 ++++++++++ ...ExpirationOnKeyWithDifferentSignatureTypesTest.java | 2 +- ...evokeKeyWithoutPreferredAlgorithmsOnPrimaryKey.java | 2 +- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/pgpainless-core/src/main/java/org/pgpainless/util/DateUtil.java b/pgpainless-core/src/main/java/org/pgpainless/util/DateUtil.java index 3f00ddb3..890d4703 100644 --- a/pgpainless-core/src/main/java/org/pgpainless/util/DateUtil.java +++ b/pgpainless-core/src/main/java/org/pgpainless/util/DateUtil.java @@ -45,6 +45,16 @@ public final class DateUtil { return getParser().format(date); } + /** + * "Round" a date down to seconds precision. + * @param date + * @return + */ + public static Date toSecondsPrecision(Date date) { + long seconds = date.getTime() / 1000; + return new Date(seconds * 1000); + } + /** * Return the current date "rounded" to UTC precision. * diff --git a/pgpainless-core/src/test/java/org/pgpainless/key/modification/ChangeExpirationOnKeyWithDifferentSignatureTypesTest.java b/pgpainless-core/src/test/java/org/pgpainless/key/modification/ChangeExpirationOnKeyWithDifferentSignatureTypesTest.java index a12b8b6b..9acb08f6 100644 --- a/pgpainless-core/src/test/java/org/pgpainless/key/modification/ChangeExpirationOnKeyWithDifferentSignatureTypesTest.java +++ b/pgpainless-core/src/test/java/org/pgpainless/key/modification/ChangeExpirationOnKeyWithDifferentSignatureTypesTest.java @@ -157,7 +157,7 @@ public class ChangeExpirationOnKeyWithDifferentSignatureTypesTest { throws PGPException { Date expirationDate = new Date(new Date().getTime() + 1000 * 60 * 60 * 24 * 14); // round date for test stability - expirationDate = DateUtil.parseUTCDate(DateUtil.formatUTCDate(expirationDate)); + expirationDate = DateUtil.toSecondsPrecision(expirationDate); PGPSecretKeyRing modded = PGPainless.modifyKeyRing(keys) .setExpirationDate(expirationDate, protector) diff --git a/pgpainless-core/src/test/java/org/pgpainless/key/modification/RevokeKeyWithoutPreferredAlgorithmsOnPrimaryKey.java b/pgpainless-core/src/test/java/org/pgpainless/key/modification/RevokeKeyWithoutPreferredAlgorithmsOnPrimaryKey.java index 7c6e0b10..606b69f4 100644 --- a/pgpainless-core/src/test/java/org/pgpainless/key/modification/RevokeKeyWithoutPreferredAlgorithmsOnPrimaryKey.java +++ b/pgpainless-core/src/test/java/org/pgpainless/key/modification/RevokeKeyWithoutPreferredAlgorithmsOnPrimaryKey.java @@ -100,7 +100,7 @@ public class RevokeKeyWithoutPreferredAlgorithmsOnPrimaryKey { @ExtendWith(TestAllImplementations.class) public void testChangingExpirationTimeWithKeyWithoutPrefAlgos() throws IOException, PGPException { - Date expirationDate = DateUtil.parseUTCDate(DateUtil.formatUTCDate(new Date())); + Date expirationDate = DateUtil.toSecondsPrecision(new Date()); PGPSecretKeyRing secretKeys = PGPainless.readKeyRing().secretKeyRing(KEY); SecretKeyRingProtector protector = new UnprotectedKeysProtector();