public void TestCompressionAndDecompression() { var postcode = "NG1 5FS"; IEnumerable <NearestPostcodeDto> nearestPostcodeDtos = new List <NearestPostcodeDto>() { new NearestPostcodeDto() { Postcode = "NG1 1AA", DistanceInMetres = 1 }, new NearestPostcodeDto() { Postcode = "NG1 1AB", DistanceInMetres = 2 } }; var compressedPostcodes = NearestPostcodeCompressor.CompressNearestPostcodeDtos(postcode, nearestPostcodeDtos); var decompressedPostcodes = NearestPostcodeCompressor.DecompressPreComputedPostcodes(compressedPostcodes); Assert.AreEqual(2, decompressedPostcodes.Count); Assert.AreEqual(1, decompressedPostcodes.FirstOrDefault(x => x.Postcode == "NG1 1AA").DistanceInMetres); Assert.AreEqual(2, decompressedPostcodes.FirstOrDefault(x => x.Postcode == "NG1 1AB").DistanceInMetres); }
public void SetUp() { _repository = new Mock <IRepository>(); _repository.SetupAllProperties(); _nearestPostcodeDtos = new List <NearestPostcodeDto>() { new NearestPostcodeDto() { Postcode = "NG1 AA", DistanceInMetres = 2 }, new NearestPostcodeDto() { Postcode = "NG1 AB", DistanceInMetres = 3 }, new NearestPostcodeDto() { Postcode = "NG1 AC", DistanceInMetres = 1 }, new NearestPostcodeDto() { Postcode = "NG1 AD", DistanceInMetres = 4 }, new NearestPostcodeDto() { Postcode = "NG1 AE", DistanceInMetres = 16095 }, }; _repository.Setup(x => x.GetNearestPostcodesAsync(It.Is <string>(y => y == _postcode), It.IsAny <double>())).ReturnsAsync(_nearestPostcodeDtos); PreComputedNearestPostcodesDto preComputedNearestPostcodes = NearestPostcodeCompressor.CompressNearestPostcodeDtos(_postcode, _nearestPostcodeDtos); _repository.Setup(x => x.GetPreComputedNearestPostcodes(It.Is <string>(y => y == _postcode))).ReturnsAsync(preComputedNearestPostcodes); _applicationConfigSettings = new ApplicationConfig() { DefaultMaxNumberOfNearbyPostcodes = 0, DefaultNearestPostcodeRadiusInMetres = 0 }; _applicationConfig = new Mock <IOptionsSnapshot <ApplicationConfig> >(); _applicationConfig.SetupGet(x => x.Value).Returns(_applicationConfigSettings); }