Example #1
0
        public void Then_If_Not_Valid_An_Exception_Is_Thrown(
            List <int> ukprns,
            GetUkprnsQuery query,
            [Frozen] Mock <IValidator <GetUkprnsQuery> > validator,
            [Frozen] Mock <IProviderService> service,
            GetUkprnsQueryHandler handler)
        {
            //Arrange
            validator.Setup(x => x.ValidateAsync(query)).ReturnsAsync(new ValidationResult {
                ValidationDictionary = { { "", "" } }
            });

            //Act
            Assert.ThrowsAsync <ValidationException>(() => handler.Handle(query, CancellationToken.None));
        }
Example #2
0
        public async Task Then_If_Valid_Calls_Repository_And_Returns_Data(
            UkprnsForStandard ukprns,
            GetUkprnsQuery query,
            [Frozen] Mock <IValidator <GetUkprnsQuery> > validator,
            [Frozen] Mock <IProviderService> service,
            GetUkprnsQueryHandler handler)
        {
            //Arrange
            validator.Setup(x => x.ValidateAsync(query)).ReturnsAsync(new ValidationResult());
            service.Setup(x => x.GetUkprnsForStandardAndLocation(query.StandardId, query.Lat, query.Lon))
            .ReturnsAsync(ukprns);

            //Act
            var actual = await handler.Handle(query, CancellationToken.None);

            //Assert
            actual.UkprnsByStandardAndLocation.Should().BeEquivalentTo(ukprns.UkprnsFilteredByStandardAndLocation);
            actual.UkprnsByStandard.Should().BeEquivalentTo(ukprns.UkprnsFilteredByStandard);
        }
        public async Task Then_Invalid_If_StandardId_Is_Zero(
            double lat,
            double lon,
            GetUkprnsQueryValidator queryValidator)
        {
            //Arrange
            var query = new GetUkprnsQuery
            {
                StandardId = 0,
                Lat        = lat,
                Lon        = lon
            };

            //Act
            var actual = await queryValidator.ValidateAsync(query);

            //Assert
            actual.IsValid().Should().BeFalse();
            actual.ValidationDictionary.ContainsKey("StandardId").Should().BeTrue();
        }
        public async Task Then_The_Request_Is_Valid_If_All_Params_Supplied(
            int standardId,
            double lat,
            double lon,
            GetUkprnsQueryValidator queryValidator
            )
        {
            //Arrange
            var query = new GetUkprnsQuery
            {
                StandardId = standardId,
                Lat        = lat,
                Lon        = lon
            };

            //Act
            var actual = await queryValidator.ValidateAsync(query);

            //Assert
            actual.IsValid().Should().BeTrue();
        }