Exemple #1
0
        public async Task AdresMatchWithBusnummerSkipsSanitization()
        {
            var existingNisCode      = Generate.NisCode.Generate(Random);
            var existingStraatnaamId = Generate.VbrObjectIdInt.Generate(Random);
            var existingGemeentenaam = "Springfield";
            var postcode             = Generate.Postcode.Generate(Random);

            //Arrange
            var request = new AddressMatchRequest().WithGemeenteAndStraatnaam();

            request.Postcode   = postcode;
            request.Huisnummer = "742";
            request.Busnummer  = "C2";

            var existingGemeente   = Latest.ArrangeLatestGemeente(existingNisCode, existingGemeentenaam).Single();
            var existingStraatnaam = Latest.ArrangeLatestStraatnaam(existingNisCode, existingGemeentenaam, existingStraatnaamId.ToString(), request.Straatnaam, Guid.NewGuid()).Single();

            Latest.ArrangeLatestAdres(existingGemeente, existingStraatnaam, postcode, request.Huisnummer, request.Busnummer);

            //Act
            var response = (AddressMatchCollection)((OkObjectResult)await Send(request)).Value;

            //Assert
            response.Should().NotBeNull();
            response.Should().HaveMatches(1);

            var firstMatch = response.AdresMatches.First();

            firstMatch.Should().HaveGemeente()
            .Which.Should().HaveGemeentenaam(existingGemeentenaam)
            .And.HaveObjectId(existingNisCode);

            firstMatch.Should().HaveStraatnaam()
            .Which.Should().HaveStraatnaam(request.Straatnaam)
            .And.HaveObjectId(existingStraatnaamId.ToString());

            firstMatch.Should().HaveVolledigAdres()
            .Which.Should().HaveGeografischeNaam($"{existingStraatnaam.NameDutch} {request.Huisnummer} bus {request.Busnummer}, {postcode} {existingGemeentenaam}");

            firstMatch.Should().HaveScore(100);
        }