diff --git a/pgpainless-wot/src/main/kotlin/org/pgpainless/wot/WebOfTrust.kt b/pgpainless-wot/src/main/kotlin/org/pgpainless/wot/WebOfTrust.kt index 9837b66e..e828aa51 100644 --- a/pgpainless-wot/src/main/kotlin/org/pgpainless/wot/WebOfTrust.kt +++ b/pgpainless-wot/src/main/kotlin/org/pgpainless/wot/WebOfTrust.kt @@ -86,7 +86,7 @@ class WebOfTrust(private val certificateStore: PGPCertificateStore) { private class PGPNetworkFactory private constructor(validatedCertificates: List, private val policy: Policy, private val referenceTime: ReferenceTime) { - private val networkBuilder: Network.Builder = Network.builder() + private val networkBuilder: Network.Builder = Network.builder().setReferenceTime(referenceTime) // certificates keyed by fingerprint private val byFingerprint: MutableMap = HashMap() diff --git a/pgpainless-wot/src/test/kotlin/org/pgpainless/wot/WebOfTrustTest.kt b/pgpainless-wot/src/test/kotlin/org/pgpainless/wot/WebOfTrustTest.kt index 10a874fb..1e3cd5ce 100644 --- a/pgpainless-wot/src/test/kotlin/org/pgpainless/wot/WebOfTrustTest.kt +++ b/pgpainless-wot/src/test/kotlin/org/pgpainless/wot/WebOfTrustTest.kt @@ -10,6 +10,7 @@ import org.pgpainless.key.OpenPgpFingerprint import org.pgpainless.wot.network.Edge import org.pgpainless.wot.network.Fingerprint import org.pgpainless.wot.network.Network +import org.pgpainless.wot.network.ReferenceTime import org.pgpainless.wot.testfixtures.TestCertificateStores import org.pgpainless.wot.testfixtures.WotTestVectors import kotlin.test.assertEquals @@ -92,6 +93,16 @@ class WebOfTrustTest { assertEquals(1, network.nodes.size) } + @Test + fun `referenceTime is propagated properly`() { + val referenceTime = ReferenceTime.now() + + val network = WebOfTrust(KeyRingCertificateStore(listOf())) + .buildNetwork(referenceTime = referenceTime) + + assertEquals(referenceTime, network.referenceTime) + } + private fun assertHasIssuerAndTarget( certifications: Edge,