public async Task Create_NewSelfRegistration_Created() { var result = await mediator.Send(new CreateNewRegistrationCommand(RegistrationGenerator.GenerateSelf())); Assert.NotNull(result); var audit = db.EvacueeRegistrationAudits.ToArray(); Assert.Single(audit); Assert.Contains(result.DietaryNeedsDetails, audit[0].Content); }
public async Task Get_RegistrationDoesntExists_NotFound() { var selfReg = RegistrationGenerator.GenerateSelf(); var regId = await di.CreateEvacueeRegistrationAsync(selfReg); var response = await mediator.Send(new RegistrationQueryRequest(regId + "123", null)); Assert.NotNull(response.FailureReason); Assert.Equal(RegistrationQueryResponse.ResponseStatus.NotFound, response.Status); Assert.Null(response.Registration); }
public async Task Get_SelfRegistrationWithReason_Success() { var selfReg = RegistrationGenerator.GenerateSelf(); var regId = await di.CreateEvacueeRegistrationAsync(selfReg); var response = await mediator.Send(new RegistrationQueryRequest(regId, null)); Assert.Null(response.FailureReason); Assert.Equal(RegistrationQueryResponse.ResponseStatus.Success, response.Status); Assert.NotNull(response.Registration); }
public async Task Get_CompleteRegistrationWithReason_Success() { var incidentCommunity = await GetRandomSeededCommunity(); var taskId = await SeedIncident(incidentCommunity.Id); var hostCommunity = (await di.GetCommunitiesAsync()).First(); var completedReg = RegistrationGenerator.GenerateCompleted(taskId, hostCommunity.Id); var regId = await di.CreateEvacueeRegistrationAsync(completedReg); var response = await mediator.Send(new RegistrationQueryRequest(regId, "want to read")); Assert.Null(response.FailureReason); Assert.Equal(RegistrationQueryResponse.ResponseStatus.Success, response.Status); Assert.NotNull(response.Registration); }
public async Task Update_RegistrationNotFinalized_Updated() { var initial = await mediator.Send(new CreateNewRegistrationCommand(RegistrationGenerator.GenerateSelf())); initial.DietaryNeedsDetails = "some other details"; await mediator.Send(new UpdateRegistrationCommand(initial)); var result = await mediator.Send(new RegistrationQueryRequest(initial.Id, null)); Assert.NotNull(result); Assert.Equal(RegistrationQueryResponse.ResponseStatus.Success, result.Status); Assert.Equal(initial.DietaryNeedsDetails, result.Registration.DietaryNeedsDetails); var audit = db.EvacueeRegistrationAudits.ToArray(); Assert.Equal(new[] { "RegistrationCreated", "RegistrationUpdated", "RegistrationViewed" }, audit.Select(a => a.Action)); }
public async Task Deactivate_RegistrationNotFinalized_NotActive() { var initial = await mediator.Send(new CreateNewRegistrationCommand(RegistrationGenerator.GenerateSelf())); var deactivated = await mediator.Send(new DeactivateRegistrationCommand(initial.Id)); Assert.True(deactivated); var result = await mediator.Send(new RegistrationQueryRequest(initial.Id, null)); Assert.NotNull(result); Assert.False(result.Registration.Active); var audit = db.EvacueeRegistrationAudits.ToArray(); Assert.Equal(new[] { "RegistrationCreated", "RegistrationDeactivated", "RegistrationViewed" }, audit.Select(a => a.Action)); }
public async Task Get_CompleteRegistrationWithReason_AuditCreated() { var incidentCommunity = await GetRandomSeededCommunity(); var taskId = await SeedIncident(incidentCommunity.Id); var hostCommunity = await GetRandomSeededCommunity(); var completedReg = RegistrationGenerator.GenerateCompleted(taskId, hostCommunity.Id); var regId = await di.CreateEvacueeRegistrationAsync(completedReg); var response = await mediator.Send(new RegistrationQueryRequest(regId, "want to read")); var auditEntries = db.EvacueeRegistrationAudits.Where(a => a.EssFileNumber == long.Parse(regId)).ToArray(); Assert.Single(auditEntries); Assert.Equal(typeof(RegistrationViewed).Name, auditEntries[0].Action); }
public async Task GetAudit_CompletedRegistrationWithSingleFullView_ViewsReturned() { var incidentCommunity = await GetRandomSeededCommunity(); var taskId = await SeedIncident(incidentCommunity.Id); var hostCommunity = await GetRandomSeededCommunity(); var completedReg = RegistrationGenerator.GenerateCompleted(taskId, hostCommunity.Id); var regId = await di.CreateEvacueeRegistrationAsync(completedReg); const string reason = "want to read"; await mediator.Send(new RegistrationQueryRequest(regId, reason)); var result = await mediator.Send(new RegistrationAuditQueryRequest(long.Parse(regId))); var entry = result.First(); Assert.Equal(reason, entry.Reason); Assert.Equal(regId, entry.EssFileNumber); Assert.Equal("System", entry.UserName); Assert.Equal(DateTime.Now, TimeZoneConverter.GetLocalDateTime(entry.DateViewed), TimeSpan.FromSeconds(1)); }