Beispiel #1
0
        public async Task Then_If_Null_Returned_Then_Not_Found_Response_Returned(
            Guid id,
            GetRestartEmployerDemandQueryResult queryResult,
            [Frozen] Mock <IMediator> mediator,
            [Greedy] DemandController controller)
        {
            //Arrange
            queryResult.EmployerDemand = null;
            mediator.Setup(x => x.Send(It.Is <GetRestartEmployerDemandQuery>(c => c.Id.Equals(id)), CancellationToken.None))
            .ReturnsAsync(queryResult);

            //Act
            var actual = await controller.Restart(id) as NotFoundResult;

            //Assert
            Assert.IsNotNull(actual);
            actual.StatusCode.Should().Be((int)HttpStatusCode.NotFound);
        }
Beispiel #2
0
        public async Task Then_The_Demand_Is_Returned_From_Mediator(
            Guid id,
            GetRestartEmployerDemandQueryResult queryResult,
            [Frozen] Mock <IMediator> mediator,
            [Greedy] DemandController controller)
        {
            //Arrange
            mediator.Setup(x => x.Send(It.Is <GetRestartEmployerDemandQuery>(c => c.Id.Equals(id)), CancellationToken.None))
            .ReturnsAsync(queryResult);

            //Act
            var actual = await controller.Restart(id) as ObjectResult;

            //Assert
            Assert.IsNotNull(actual);
            actual.StatusCode.Should().Be((int)HttpStatusCode.OK);
            var actualModel = actual.Value as GetRestartCourseDemandResponse;

            Assert.IsNotNull(actualModel);
            actualModel.Id.Should().Be(queryResult.EmployerDemand.Id);
        }
        public void Then_The_Fields_Are_Correctly_Mapped(GetRestartEmployerDemandQueryResult source)
        {
            //Act
            var actual = (GetRestartCourseDemandResponse)source;

            //Assert
            actual.RestartDemandExists.Should().Be(source.RestartDemandExists);
            actual.Should().BeEquivalentTo(source.EmployerDemand, options => options
                                           .Excluding(c => c.StartSharingUrl)
                                           .Excluding(c => c.StopSharingUrl)
                                           .Excluding(c => c.Stopped)
                                           .Excluding(c => c.Course)
                                           .Excluding(c => c.Location)
                                           .Excluding(c => c.ContactEmailAddress)
                                           .Excluding(c => c.ExpiredCourseDemandId)
                                           .Excluding(c => c.LastStartDate)
                                           );
            actual.ContactEmail.Should().Be(source.EmployerDemand.ContactEmailAddress);
            actual.TrainingCourse.Should().BeEquivalentTo(source.EmployerDemand.Course);
            actual.Location.Location.GeoPoint.Should().BeEquivalentTo(source.EmployerDemand.Location.LocationPoint.GeoPoint);
            actual.Location.Name.Should().BeEquivalentTo(source.EmployerDemand.Location.Name);
            actual.TrainingCourse.LastStartDate.Should().Be(source.LastStartDate);
        }