コード例 #1
0
        public void ModelSetWithMunicipalitiesAndTypeAsAreaType()
        {
            // Arrange
            codeServiceMockSetup.Setup(c => c.GetMunicipalityByCode(It.IsAny <string>(), It.IsAny <bool>())).Returns(new VmListItem()
            {
                Id = Guid.NewGuid()
            });
            var list = new List <VmOpenApiAreaIn>()
            {
                new VmOpenApiAreaIn()
                {
                    Type      = AreaTypeEnum.Municipality.ToString(),
                    AreaCodes = new List <string>()
                    {
                        "code1", "code2"
                    }
                }
            };
            var validator = new AreaAndTypeValidator(list, AreaInformationTypeEnum.AreaType.ToString(), codeService);

            // Act
            validator.Validate(controller.ModelState);

            // Assert
            controller.ModelState.IsValid.Should().BeTrue();
            codeServiceMockSetup.Verify(m => m.GetMunicipalityByCode(It.IsAny <string>(), It.IsAny <bool>()), Times.Exactly(2));
        }
コード例 #2
0
        public void ModelSetWithoutAreasAndTypeAsWholeCountry()
        {
            // Arrange
            var validator = new AreaAndTypeValidator(new List <VmOpenApiAreaIn>(), AreaInformationTypeEnum.WholeCountry.ToString(), codeService);

            // Act
            validator.Validate(controller.ModelState);

            // Assert
            controller.ModelState.IsValid.Should().BeTrue();
        }
コード例 #3
0
        public void InvalidTypeShouldThrow()
        {
            // Arrange
            var validator = new AreaAndTypeValidator(new List <VmOpenApiAreaIn>(), "InvalidType", codeService);

            // Act
            Action act = () => validator.Validate(controller.ModelState);

            // Assert
            act.ShouldThrow <Exception>();
        }
コード例 #4
0
        public void ModelIsNull()
        {
            // Arrange
            var validator = new AreaAndTypeValidator(null, "", codeService);

            // Act
            validator.Validate(controller.ModelState);

            // Assert
            controller.ModelState.IsValid.Should().BeTrue();
        }
コード例 #5
0
        public void ModelSetWithAreasAndTypeAsWholeCountry()
        {
            // Arrange
            var list = new List <VmOpenApiAreaIn>()
            {
                new VmOpenApiAreaIn()
                {
                    AreaCodes = new List <string>()
                    {
                        "code1", "code2"
                    }
                }
            };
            var validator = new AreaAndTypeValidator(list, AreaInformationTypeEnum.WholeCountry.ToString(), codeService);

            // Act
            validator.Validate(controller.ModelState);

            // Assert
            controller.ModelState.IsValid.Should().BeFalse();
        }
コード例 #6
0
        public void ModelSetWithAreasAndTypeAsAreaType()
        {
            // Arrange
            codeServiceMockSetup.Setup(c => c.GetAreaByCodeAndType(It.IsAny <string>(), It.IsAny <string>())).Returns((VmOpenApiArea)null);
            var list = new List <VmOpenApiAreaIn>()
            {
                new VmOpenApiAreaIn()
                {
                    Type      = AreaTypeEnum.Province.ToString(),
                    AreaCodes = new List <string>()
                    {
                        "code1", "code2"
                    }
                }
            };
            var validator = new AreaAndTypeValidator(list, AreaInformationTypeEnum.AreaType.ToString(), codeService);

            // Act
            validator.Validate(controller.ModelState);

            // Assert
            controller.ModelState.IsValid.Should().BeFalse();
            codeServiceMockSetup.Verify(m => m.GetAreaByCodeAndType(It.IsAny <string>(), It.IsAny <string>()), Times.Exactly(2));
        }