Пример #1
0
        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);
        }
Пример #2
0
        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);
        }
Пример #3
0
        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);
        }
Пример #4
0
        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);
        }
Пример #5
0
        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));
        }
Пример #6
0
        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));
        }
Пример #7
0
        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);
        }
Пример #8
0
        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));
        }