diff --git a/EnvelopeGenerator.Domain/Entities/EnvelopeHistory.cs b/EnvelopeGenerator.Domain/Entities/EnvelopeHistory.cs index 3e0fd618..1e19476e 100644 --- a/EnvelopeGenerator.Domain/Entities/EnvelopeHistory.cs +++ b/EnvelopeGenerator.Domain/Entities/EnvelopeHistory.cs @@ -54,25 +54,23 @@ public class EnvelopeHistory : IHasEnvelope, IHasReceiver [ForeignKey("EnvelopeId")] public virtual Envelope #if NET - ? + ? #endif - Envelope { get; set; } + Envelope { get; set; } [ForeignKey("UserReference")] public virtual User #if NET ? #endif - Sender - { get; set; } + Sender { get; set; } [ForeignKey("UserReference")] public virtual Receiver #if NET ? #endif - Receiver - { get; set; } + Receiver { get; set; } #if NETFRAMEWORK [NotMapped] diff --git a/EnvelopeGenerator.Tests.Application/HistoryTests.cs b/EnvelopeGenerator.Tests.Application/HistoryTests.cs index 155a4d8b..85ae2f55 100644 --- a/EnvelopeGenerator.Tests.Application/HistoryTests.cs +++ b/EnvelopeGenerator.Tests.Application/HistoryTests.cs @@ -1,4 +1,5 @@ -using EnvelopeGenerator.Application.Extensions; +using EnvelopeGenerator.Application.Dto.EnvelopeHistory; +using EnvelopeGenerator.Application.Extensions; using EnvelopeGenerator.Application.Histories.Commands; using EnvelopeGenerator.Application.Histories.Queries; using EnvelopeGenerator.Domain.Constants; @@ -35,7 +36,7 @@ public class HistoryTests : TestBase var createReceiverCmd = this.CreateReceiverCommand(); (var receiver, _) = await Mediator.Send(createReceiverCmd); - // Create EnvelopeReceiver + // Create envelope receiver var envRcv = this.CreateEnvelopeReceiver(envelope.Id, receiver.Id); envRcv = await GetRepository().CreateAsync(envRcv, cancel); @@ -53,38 +54,59 @@ public class HistoryTests : TestBase [Test] public async Task ReadHistory_Should_Filter_By_Status() { - // Arrange + /// Arrange + CancellationToken cancel = default; + + // Create envelope + var envelope = FakeEnvelope; + envelope = await GetRepository().CreateAsync(envelope, cancel); + + // Create receiver + var createReceiverCmd = this.CreateReceiverCommand(); + (var receiver, _) = await Mediator.Send(createReceiverCmd); + + // Create envelope receiver + var envRcv = this.CreateEnvelopeReceiver(envelope.Id, receiver.Id); + envRcv = await GetRepository().CreateAsync(envRcv, cancel); + var createCmd1 = new CreateHistoryCommand { - EnvelopeId = 2, - UserReference = "UserX", - Status = EnvelopeStatus.EnvelopeCreated + EnvelopeId = envelope.Id, + UserReference = receiver.EmailAddress, + Status = EnvelopeStatus.AccessCodeRequested }; var createCmd2 = new CreateHistoryCommand { - EnvelopeId = 2, - UserReference = "UserX", - Status = EnvelopeStatus.EnvelopePartlySigned + EnvelopeId = envelope.Id, + UserReference = receiver.EmailAddress, + Status = EnvelopeStatus.EnvelopeCompletelySigned }; - await Mediator.Send(createCmd1); - await Mediator.Send(createCmd2); + await Mediator.Send(createCmd1, cancel); + await Mediator.Send(createCmd2, cancel); // Act - var result = await Mediator.Send(new ReadHistoryQuery(2, EnvelopeStatus.EnvelopePartlySigned)); - + var readQuery = new ReadHistoryQuery() + { + EnvelopeId = envelope.Id, + Status = EnvelopeStatus.EnvelopeCompletelySigned + }; + var result = await Mediator.Send(readQuery, cancel); + // Assert Assert.That(result, Has.Exactly(1).Items); - Assert.That(result, Has.All.Matches( - r => r.Status == EnvelopeStatus.EnvelopePartlySigned)); + Assert.That(result, Has.All.Matches(r => r.Status == EnvelopeStatus.EnvelopeCompletelySigned)); } [Test] public async Task ReadHistory_Should_Return_Empty_When_No_Record() { // Act - var result = await Mediator.Send(new ReadHistoryQuery(999)); + var result = await Mediator.Send(new ReadHistoryQuery() + { + EnvelopeId = 9999 + }); // Assert Assert.That(result, Is.Empty);