Skip to content

Commit e41722a

Browse files
feat: enhanced the owned-credentials endpoint (eclipse-tractusx#240)
Reviewed-By: Phil Schneider <[email protected]>
1 parent 7232f27 commit e41722a

File tree

3 files changed

+50
-2
lines changed

3 files changed

+50
-2
lines changed

src/database/SsiCredentialIssuer.DbAccess/Models/OwnedVerifiedCredentialData.cs

+2-1
Original file line numberDiff line numberDiff line change
@@ -26,5 +26,6 @@ public record OwnedVerifiedCredentialData(
2626
VerifiedCredentialTypeId CredentialType,
2727
CompanySsiDetailStatusId Status,
2828
DateTimeOffset? ExpiryDate,
29-
string Authority
29+
string Authority,
30+
string? Version
3031
);

src/database/SsiCredentialIssuer.DbAccess/Repositories/CompanySsiDetailsRepository.cs

+2-1
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,8 @@ public IAsyncEnumerable<OwnedVerifiedCredentialData> GetOwnCredentialDetails(str
175175
c.VerifiedCredentialTypeId,
176176
c.CompanySsiDetailStatusId,
177177
c.ExpiryDate,
178-
c.IssuerBpn))
178+
c.IssuerBpn,
179+
c.VerifiedCredentialExternalTypeDetailVersion!.Version))
179180
.ToAsyncEnumerable();
180181

181182
/// <inheritdoc />

tests/issuer/SsiCredentialIssuer.Service.Tests/BusinessLogic/IssuerBusinessLogicTests.cs

+46
Original file line numberDiff line numberDiff line change
@@ -989,4 +989,50 @@ private void ConfigureHttpClientFactoryFixture(HttpResponseMessage httpResponseM
989989
}
990990

991991
#endregion
992+
993+
#region GetCredentialsForBpn
994+
995+
[Fact]
996+
public async void GetCredentialsForBpn_WithVersion_ReturnExpected()
997+
{
998+
OwnedVerifiedCredentialData[] ownedVerifiedCredentialData = [new OwnedVerifiedCredentialData(
999+
Guid.NewGuid(),
1000+
VerifiedCredentialTypeId.TRACEABILITY_FRAMEWORK,
1001+
CompanySsiDetailStatusId.ACTIVE,
1002+
DateTimeOffset.Now,
1003+
"Test Authority",
1004+
"3.0")];
1005+
1006+
A.CallTo(() => _companySsiDetailsRepository.GetOwnCredentialDetails(_identity.Bpnl)).Returns(ownedVerifiedCredentialData.ToAsyncEnumerable());
1007+
1008+
var ownedCredentials = _sut.GetCredentialsForBpn();
1009+
1010+
await foreach (var credentialData in ownedCredentials)
1011+
{
1012+
credentialData.Version.Should().Be(ownedVerifiedCredentialData[0].Version);
1013+
}
1014+
}
1015+
1016+
[Fact]
1017+
public async void GetCredentialsForBpn_WithoutVersion_ReturnExpected()
1018+
{
1019+
OwnedVerifiedCredentialData[] ownedVerifiedCredentialData = [new OwnedVerifiedCredentialData(
1020+
Guid.NewGuid(),
1021+
VerifiedCredentialTypeId.TRACEABILITY_FRAMEWORK,
1022+
CompanySsiDetailStatusId.ACTIVE,
1023+
DateTimeOffset.Now,
1024+
"Test Authority",
1025+
null)];
1026+
1027+
A.CallTo(() => _companySsiDetailsRepository.GetOwnCredentialDetails(_identity.Bpnl)).Returns(ownedVerifiedCredentialData.ToAsyncEnumerable());
1028+
1029+
var ownedCredentials = _sut.GetCredentialsForBpn();
1030+
1031+
await foreach (var credentialData in ownedCredentials)
1032+
{
1033+
credentialData.Version.Should().BeNull();
1034+
}
1035+
}
1036+
1037+
#endregion
9921038
}

0 commit comments

Comments
 (0)