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)); }
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(); }
public void InvalidTypeShouldThrow() { // Arrange var validator = new AreaAndTypeValidator(new List <VmOpenApiAreaIn>(), "InvalidType", codeService); // Act Action act = () => validator.Validate(controller.ModelState); // Assert act.ShouldThrow <Exception>(); }
public void ModelIsNull() { // Arrange var validator = new AreaAndTypeValidator(null, "", codeService); // Act validator.Validate(controller.ModelState); // Assert controller.ModelState.IsValid.Should().BeTrue(); }
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(); }
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)); }