From 036f2212bb9db48310b00d0b3b3dde7d6196dd32 Mon Sep 17 00:00:00 2001 From: nitro-neal <5314059+nitro-neal@users.noreply.github.com> Date: Sat, 23 Mar 2024 17:59:11 -0700 Subject: [PATCH] small updates (#260) --- .../credentials/StatusListCredentialTest.kt | 10 +++--- .../credentials/VerifiableCredentialTest.kt | 33 +++++++++++++++++-- 2 files changed, 36 insertions(+), 7 deletions(-) diff --git a/credentials/src/test/kotlin/web5/sdk/credentials/StatusListCredentialTest.kt b/credentials/src/test/kotlin/web5/sdk/credentials/StatusListCredentialTest.kt index 923045c73..a670d3871 100644 --- a/credentials/src/test/kotlin/web5/sdk/credentials/StatusListCredentialTest.kt +++ b/credentials/src/test/kotlin/web5/sdk/credentials/StatusListCredentialTest.kt @@ -123,7 +123,7 @@ class StatusListCredentialTest { issuer = issuerDid.uri, subject = holderDid.uri, data = StreetCredibility(localRespect = "high", legit = true), - credentialStatus2 + credentialStatus = credentialStatus2 ) val statusListCredential = StatusListCredential.create( @@ -198,7 +198,7 @@ class StatusListCredentialTest { issuer = issuerDid.uri, subject = holderDid.uri, data = StreetCredibility(localRespect = "high", legit = true), - credentialStatus2 + credentialStatus = credentialStatus2 ) val exception = assertThrows { @@ -321,7 +321,7 @@ class StatusListCredentialTest { issuer = issuerDid.uri, subject = holderDid.uri, data = StreetCredibility(localRespect = "high", legit = true), - credentialStatus2 + credentialStatus = credentialStatus2 ) val credentialStatus3 = StatusList2021Entry.builder() @@ -336,7 +336,7 @@ class StatusListCredentialTest { issuer = issuerDid.uri, subject = holderDid.uri, data = StreetCredibility(localRespect = "high", legit = true), - credentialStatus3 + credentialStatus = credentialStatus3 ) val statusListCredential = @@ -390,7 +390,7 @@ class StatusListCredentialTest { issuer = issuerDid.uri, subject = holderDid.uri, data = StreetCredibility(localRespect = "high", legit = true), - credentialStatus2 + credentialStatus = credentialStatus2 ) val statusListCredential = diff --git a/credentials/src/test/kotlin/web5/sdk/credentials/VerifiableCredentialTest.kt b/credentials/src/test/kotlin/web5/sdk/credentials/VerifiableCredentialTest.kt index af828e0a6..a4da9e9e5 100644 --- a/credentials/src/test/kotlin/web5/sdk/credentials/VerifiableCredentialTest.kt +++ b/credentials/src/test/kotlin/web5/sdk/credentials/VerifiableCredentialTest.kt @@ -19,6 +19,7 @@ import web5.sdk.crypto.InMemoryKeyManager import web5.sdk.dids.Did import web5.sdk.dids.didcore.Purpose import web5.sdk.dids.extensions.load +import web5.sdk.dids.methods.jwk.DidJwk import web5.sdk.dids.methods.dht.CreateDidDhtOptions import web5.sdk.dids.methods.dht.DidDht import web5.sdk.dids.methods.key.DidKey @@ -26,6 +27,7 @@ import web5.sdk.testing.TestVectors import java.io.File import java.security.SignatureException import java.text.ParseException +import java.util.Date import kotlin.test.Ignore import kotlin.test.assertEquals import kotlin.test.assertFails @@ -76,7 +78,14 @@ class VerifiableCredentialTest { subject = holderDid.uri, data = StreetCredibility(localRespect = "high", legit = true) ) + assertNotNull(vc) + assertEquals(vc.type, "StreetCred") + assertEquals(vc.subject, holderDid.uri) + assertEquals(vc.issuer, issuerDid.uri) + assertEquals(vc.vcDataModel.credentialSubject.id.toString(), holderDid.uri) + assertEquals(vc.vcDataModel.credentialSubject.claims.get("localRespect"), "high") + assertEquals(vc.vcDataModel.credentialSubject.claims.get("legit"), true) } @Test @@ -101,8 +110,8 @@ class VerifiableCredentialTest { @Test fun `verify does not throw an exception if vc is legit`() { val keyManager = InMemoryKeyManager() - val issuerDid = DidKey.create(keyManager) - val holderDid = DidKey.create(keyManager) + val issuerDid = DidJwk.create(keyManager) + val holderDid = DidJwk.create(keyManager) val vc = VerifiableCredential.create( type = "StreetCred", @@ -115,6 +124,26 @@ class VerifiableCredentialTest { VerifiableCredential.verify(vcJwt) } + + data class KnowYourCustomerCred(val country: String) + @Test + fun `kyc credential verify does not throw an exception if vc is legit`() { + val keyManager = InMemoryKeyManager() + val issuerDid = DidJwk.create(keyManager) + val subjectDid = DidJwk.create(keyManager) + + val vc = VerifiableCredential.create( + type = "KnowYourCustomerCred", + issuer = issuerDid.uri, + subject = subjectDid.uri, + expirationDate = Date(2055,11,21), + data = KnowYourCustomerCred(country = "us") + ) + + val vcJwt = vc.sign(issuerDid) + VerifiableCredential.verify(vcJwt) + } + @Test fun `verify does not throw an exception if vc signed with did dht is legit`() { val keyManager = InMemoryKeyManager()