public void PersonsokFonetisktMangaTraffarTest() { PersonSokResponse response = Client.PersonSok(Personsok.CreateFonetisktNamnRequest(IdentifieringsInformation, "An*")); Assert.IsNotNull(response.Items); Assert.IsInstanceOf <OverstigerMaxAntalSvarsposterTYPE>(response.Items[0]); }
/// <summary> /// Logga personsökningssvaret som tas emot från SPAR-tjänsten /// Loggningen visar även hur man kan ta ut information från responsen /// </summary> /// <param name="response">Responsemeddelandet, innehåller svaret från anropet</param> /// <returns></returns> private static void LogPersonsokningResponse(PersonSokResponse response) { List <object> svarsposter = response.Items.ToList(); List <AviseringsPostTYPE> aviseringsposter = svarsposter .FindAll(a => a.GetType() == typeof(AviseringsPostTYPE)) .Select(a => (AviseringsPostTYPE)a) .ToList(); List <UndantagTYPE> undantagsposter = svarsposter .FindAll(u => u.GetType() == typeof(UndantagTYPE)) .Select(u => (UndantagTYPE)u) .ToList(); List <OverstigerMaxAntalSvarsposterTYPE> maxantalsposter = svarsposter .FindAll(m => m.GetType() == typeof(OverstigerMaxAntalSvarsposterTYPE)) .Select(m => (OverstigerMaxAntalSvarsposterTYPE)m) .ToList(); int antalSvarsposter = svarsposter == null ? 0 : svarsposter.Count(); int antalAviseringsposter = aviseringsposter == null ? 0 : aviseringsposter.Count(); int antalUndantagsposter = undantagsposter == null ? 0 : undantagsposter.Count(); int antalMaxantalsposter = maxantalsposter == null ? 0 : maxantalsposter.Count(); StringBuilder sb = new StringBuilder(); sb.AppendLine("Personsökningen gav " + antalSvarsposter + " sökträff(ar)"); sb.AppendLine("Antal aviseringsposter: " + antalAviseringsposter); sb.AppendLine("Antal undantagsposter: " + antalUndantagsposter); sb.AppendLine("Antal maxantalsposter: " + antalMaxantalsposter); sb = antalAviseringsposter <= 0 ? sb : LogAviseringsPoster(sb, aviseringsposter); sb = antalUndantagsposter <= 0 ? sb : LogUndantagsPoster(sb, undantagsposter); sb = antalMaxantalsposter <= 0 ? sb : LogMaxantalsPoster(sb, maxantalsposter); Logger.LogInformation(sb.ToString()); }
public void PersonsokGiltigtPersonIdTest() { PersonSokResponse response = Client.PersonSok(Personsok.CreatePersonIdRequest(IdentifieringsInformation, "197912122384")); Assert.IsNotNull(response.Items); Assert.AreEqual(1, response.Items.Length); Assert.IsInstanceOf <AviseringsPostTYPE>(response.Items[0]); }
/// <summary> /// Demonstration av SPAR Personsök program-program version 2021.1 /// </summary> public static void Main(string[] args) { Logger.LogInformation("Demonstration SPAR Personsök program-program version 2021.1"); PersonsokServiceClient client = CreatePersonsokServiceClient( "https://kt-ext-ws.statenspersonadressregister.se/2021.1/", "kt-ext-ws.statenspersonadressregister.se", "Kommun_A.p12", "5761213661378233", "DigiCert.pem"); IdentifieringsinformationTYPE identifieringsInformation = CreateIdentifieringsInformation( 500243, 500243, 637, "Anställd X på avdelning Y, Testsökning C# .NET Core"); Logger.LogInformation("Personsökning med ett giltigt personnummer"); PersonSokRequest giltigtPersonIdRequest = CreatePersonIdRequest(identifieringsInformation, "197912122384"); LogPersonsokningRequest(giltigtPersonIdRequest); PersonSokResponse giltigtPersonIdResponse = client.PersonSok(giltigtPersonIdRequest); LogPersonsokningResponse(giltigtPersonIdResponse); Logger.LogInformation("Personsökning med ett ogiltigt personnummer"); PersonSokRequest ogiltigtPersonIdRequest = CreatePersonIdRequest(identifieringsInformation, "191212121212"); LogPersonsokningRequest(ogiltigtPersonIdRequest); PersonSokResponse ogiltigtPersonIdResponse = client.PersonSok(ogiltigtPersonIdRequest); LogPersonsokningResponse(ogiltigtPersonIdResponse); Logger.LogInformation("Personsökning med ett fonetiskt namn, med förväntad träff"); PersonSokRequest fonetisktNamnRequest = CreateFonetisktNamnRequest(identifieringsInformation, "Mikael Efter*"); LogPersonsokningRequest(fonetisktNamnRequest); PersonSokResponse fonetisktNamnResponse = client.PersonSok(fonetisktNamnRequest); LogPersonsokningResponse(fonetisktNamnResponse); Logger.LogInformation("Personsökning med ett fonetiskt namn, utan förväntad träff"); PersonSokRequest fonetisktNamnRequest2 = CreateFonetisktNamnRequest(identifieringsInformation, "NamnSomFörhoppningsvisInteFinns"); LogPersonsokningRequest(fonetisktNamnRequest2); PersonSokResponse fonetisktNamnResponse2 = client.PersonSok(fonetisktNamnRequest2); LogPersonsokningResponse(fonetisktNamnResponse2); Logger.LogInformation("Personsökning med ett fonetiskt namn, med många träffar"); PersonSokRequest fonetisktNamnRequest3 = CreateFonetisktNamnRequest(identifieringsInformation, "An*"); LogPersonsokningRequest(fonetisktNamnRequest3); PersonSokResponse fonetisktNamnResponse3 = client.PersonSok(fonetisktNamnRequest3); LogPersonsokningResponse(fonetisktNamnResponse3); }
public void PersonsokFonetisktIngaTraffarTest() { PersonSokResponse response = Client.PersonSok(Personsok.CreateFonetisktNamnRequest(IdentifieringsInformation, "NamnSomFörhoppningsvisInteFinns")); Assert.IsEmpty(response.Items); }
public void PersonsokOgiltigtPersonIdTest() { PersonSokResponse response = Client.PersonSok(Personsok.CreatePersonIdRequest(IdentifieringsInformation, "191212121212")); Assert.IsEmpty(response.Items); }