public LocationGroupBuilderTests() { _mockLocationFormatter = new Mock<IConditionalFormatter<string, LocationDataField>>(); _mockLocationFormatter.Setup( r => r.DetermineConditionsAndFormat(It.IsAny<string>(), It.IsAny<LocationDataField>())) .Returns((string value,LocationDataField type) => value); _builder = new LocationGroupBuilder(_mockLocationFormatter.Object); _locationQueryFields = new SqlIteLocationQueryFields(); _queryFields = new List<LocationQueryField> { _locationQueryFields.HouseNumber, _locationQueryFields.Street, _locationQueryFields.Town }; _mockDataRecord = new Mock<IDataRecord>(); _mockDataRecord.Setup(r => r[It.IsAny<string>()]).Returns(""); _mockDataRecord.Setup(r => r[It.Is<string>(x => x == "PAO_START_NUMBER")]).Returns("22"); _mockDataRecord.Setup(r => r[It.Is<string>(b => b == "PAO_START_SUFFIX")]).Returns(""); _mockDataRecord.Setup(r => r[It.Is<string>(y => y == "STREET_DESCRIPTION")]).Returns("Test Road"); _mockDataRecord.Setup(r => r[It.Is<string>(z => z == "TOWN_NAME")]).Returns("TestTown"); _mockDataRecord.Setup(r => r[It.Is<string>(z => z == "POSTCODE")]).Returns("TS17 TTT"); _mockDataRecord.Setup(r => r[It.Is<string>(z => z == "Number")]).Returns(32); }
protected LocationServiceTestsBase() { _mockIdEncoder = new Mock<ILocationIdEncoder>(); _mockIdEncoder.Setup(e => e.Decode(It.IsAny<string>())).Returns<string>(x => x); _mockIdEncoder.Setup(e => e.Encode(It.IsAny<string>())).Returns<string>(x => x); var mockMapper = new LocationModelMapper(); _mockLocationQueryFields = new Mock<ILocationQueryFields>(); _mockQueryValidator = new Mock<ILocationQueryValidator>(); _mockQueryValidator.Setup(v => v.IsValid(It.IsAny<string>())).Returns(true); _mockLocationRepository = new Mock<ILocationRepository>(); _mockLocationGroupRepository = new Mock<ILocationGroupRepository>(); _mockQuerySanitiser = new Mock<ILocationQuerySanitiser>(); _mockQuerySanitiser.Setup(s => s.Sanitise(It.IsAny<string>())).Returns<string>(q => q.ToLower()); _mockLocationGroupFormatter = new Mock<IConditionalFormatter<string, LocationDataField>>(); _mockLocationGroupFormatter.Setup( r => r.DetermineConditionsAndFormat(It.IsAny<string>(), It.IsAny<LocationDataField>())).Returns((string value, LocationDataField type) => value); _mockLocationFormatter = new Mock<IConditionalFormatter<string, string>>(); _mockLocationFormatter.Setup( r => r.DetermineConditionsAndFormat(It.IsAny<string>(), It.IsAny<string>())).Returns((string value, string type) => value); _sutSearch = new LocationSearchService(_mockLocationGroupRepository.Object, _mockQueryValidator.Object, _mockQuerySanitiser.Object, _mockLocationQueryFields.Object, _mockIdEncoder.Object); _sutPostcode = new LocationSearchPostcodeService(_mockLocationRepository.Object, _mockQueryValidator.Object, _mockQuerySanitiser.Object, mockMapper); _sutGet = new LocationRetrievalService(_mockLocationRepository.Object, _mockIdEncoder.Object, mockMapper); _mockDataReader = new Mock<IDataRecord>(); _mockDataReader.Setup(r => r[It.IsAny<string>()]).Returns(""); _mockDataReader.Setup(r => r["UPRN"]).Returns("1"); _mockDataReader.Setup(r => r[It.Is<string>(x => x == "X_COORDINATE")]).Returns("1.0"); _mockDataReader.Setup(r => r[It.Is<string>(y => y == "Y_COORDINATE")]).Returns("2.0"); _builder = new LocationGroupBuilder(_mockLocationGroupFormatter.Object); _locationQueryFields = new SqlIteLocationQueryFields(); }