Commits

Kristian Dorland authored fd1716111a9
IDSAS-11: Bedre fejlhåndtering og integrationstests af SoapFault
No tags

idsas-integration-tests/src/test/java/dk/nsp/idsas/test/stepdefinitions/AuthStepDefinitions.java

Added
1 +package dk.nsp.idsas.test.stepdefinitions;
2 +
3 +import dk.nsp.idsas.test.idptest.SOAPOperation;
4 +import dk.nsp.idsas.test.idptest.ServiceCaller;
5 +import dk.nsp.test.idp.builder.Builders;
6 +import dk.nsp.test.idp.model.EmployeeIdentity;
7 +import dk.nsp.test.idp.vault.RemoteCredentialVault;
8 +import dk.sundhedsdatastyrelsen.identitetssloering._2023._06._01.CreateBlurringRequestType;
9 +import dk.sundhedsdatastyrelsen.identitetssloering._2023._06._01.PatientIdType;
10 +import io.cucumber.java.en.Then;
11 +import io.cucumber.java.en.When;
12 +import org.springframework.beans.factory.annotation.Value;
13 +
14 +import javax.xml.bind.JAXBException;
15 +import java.net.URI;
16 +import java.net.URISyntaxException;
17 +import java.util.UUID;
18 +
19 +import static dk.nsp.test.idp.builder.Builders.*;
20 +import static org.junit.Assert.assertTrue;
21 +
22 +public class AuthStepDefinitions {
23 + @Value("${idsas.service.endpoint}" + "/blurring")
24 + private String url;
25 +
26 + private final ServiceCaller serviceCaller = new ServiceCaller();
27 + private String fejlbesked = "";
28 +
29 + @When("Jeg kalder med CVR {string}, der ikke er white listed")
30 + public void jegKalderMedCVRDerIkkeErWhiteListed(String cvr) throws URISyntaxException, JAXBException {
31 + CreateBlurringRequestType request = new CreateBlurringRequestType();
32 + PatientIdType patientId = new PatientIdType();
33 + patientId.setId("test");
34 + request.setPatientId(patientId);
35 + try {
36 + serviceCaller.callRoot(peterNaur(cvr),
37 + request, SOAPOperation.CreateBlurring, new URI(url),
38 + CreateBlurringRequestType.class,
39 + String.class);
40 + } catch (RuntimeException e) {
41 + fejlbesked = e.getMessage();
42 + }
43 + }
44 +
45 + @Then("Jeg får en SOAP fault tilbage som indeholder CVR {string} og teksten {string}")
46 + public void jegFårEnSOAPFaultTilbageSomIndeholderCVROgTeksten(String cvr, String tekst) {
47 + System.out.println(fejlbesked);
48 + assertTrue(fejlbesked.contains(cvr));
49 + assertTrue(fejlbesked.contains(tekst));
50 + }
51 +
52 + public static EmployeeIdentity peterNaur(String cvr) {
53 + return Builders.employeeIdentity()
54 + .representing(employee()
55 + .identifiedBy(UUID.fromString("4a4c9843-58b5-4694-95d0-ea5ab80823da")))
56 + .employedAt(organization()
57 + .named("Sundhedsdatastyrelsen")
58 + .identifiedBy(cvr))
59 + .usedBy(serviceConsumer()
60 + .named("Service Consumer Test")
61 + .identifiedBy(new RemoteCredentialVault(URI.create("https://www.nspop.dk/download/attachments/190481050/NSP_Test_Service_Consumer_sds.p12"), "Test1234".toCharArray(), true)))
62 + .verifiedBy(identityProvider()
63 + .named("https://idp.test.nspop.dk")
64 + .identifiedBy(new RemoteCredentialVault(URI.create("https://www.nspop.dk/download/attachments/190481050/NSP_Test_Identity_Provider_sds.p12"), "Test1234".toCharArray(), true)))
65 + .using(securityTokenService()
66 + .at(URI.create("http://test1.ekstern-test.nspop.dk:8080/sts/services/BST2SOSI")))
67 + .build();
68 + }
69 +
70 +
71 +}

Everything looks good. We'll let you know here if there's anything you should know about.

Add shortcut