annotate src/test/java/de/intevation/lada/test/stamm/Stammdaten.java @ 522:90e6bc0d653e

Added tests for staat services.
author Raimund Renkert <raimund.renkert@intevation.de>
date Thu, 19 Feb 2015 14:49:36 +0100
parents 688d91792c63
children ddb83d20e52a
rev   line source
495
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
1 package de.intevation.lada.test.stamm;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
2
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
3 import java.io.StringReader;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
4 import java.net.URL;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
5 import java.util.HashMap;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
6 import java.util.List;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
7 import java.util.Map;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
8
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
9 import javax.json.Json;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
10 import javax.json.JsonException;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
11 import javax.json.JsonObject;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
12 import javax.json.JsonReader;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
13 import javax.ws.rs.client.Client;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
14 import javax.ws.rs.client.ClientBuilder;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
15 import javax.ws.rs.client.WebTarget;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
16 import javax.ws.rs.core.Response;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
17
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
18 import org.junit.Assert;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
19
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
20 import de.intevation.lada.Protocol;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
21
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
22 public class Stammdaten {
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
23
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
24 private static Map<String, String> compare;
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
25
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
26 public Stammdaten() {
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
27 compare = new HashMap<String, String>();
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
28 compare.put("datenbasis",
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
29 "{\"id\":9,\"beschreibung\":\"Europa\",\"datenbasis\":\"Europa\"}");
497
27fccef93f62 Added tests for messeinheit service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 495
diff changeset
30 compare.put("messeinheit",
27fccef93f62 Added tests for messeinheit service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 495
diff changeset
31 "{\"id\":207,\"beschreibung\":\"Becquerel pro Stunde\"," +
27fccef93f62 Added tests for messeinheit service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 495
diff changeset
32 "\"einheit\":\"Bq/h\",\"eudfMesseinheitId\":null," +
27fccef93f62 Added tests for messeinheit service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 495
diff changeset
33 "\"umrechnungsFaktorEudf\":null}");
499
4564f702f6aa Added tests for messgroesse service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 497
diff changeset
34 compare.put("messgroesse",
4564f702f6aa Added tests for messgroesse service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 497
diff changeset
35 "{\"id\":56,\"beschreibung\":\"Mangan\",\"defaultFarbe\":" +
4564f702f6aa Added tests for messgroesse service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 497
diff changeset
36 "\"175175075\",\"eudfNuklidId\":50,\"idfNuklidKey\":\"Mn54\"," +
4564f702f6aa Added tests for messgroesse service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 497
diff changeset
37 "\"istLeitnuklid\":false,\"kennungBvl\":\"1925054\"," +
4564f702f6aa Added tests for messgroesse service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 497
diff changeset
38 "\"messgroesse\":\"Mn 54\"}");
502
ff5e10f2dc8a Added tests for messmethode service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 499
diff changeset
39 compare.put("messmethode",
ff5e10f2dc8a Added tests for messmethode service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 499
diff changeset
40 "{\"id\":\"GI\",\"beschreibung\":null,\"messmethode\":" +
ff5e10f2dc8a Added tests for messmethode service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 499
diff changeset
41 "\"Iod, Gamma-Spektrometrie\"}");
504
251e254e4c2e Added tests for messstellen services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 502
diff changeset
42 compare.put("messstelle",
251e254e4c2e Added tests for messstellen services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 502
diff changeset
43 "{\"id\":\"03151\",\"amtskennung\":null,\"beschreibung\":" +
251e254e4c2e Added tests for messstellen services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 502
diff changeset
44 "\"E.ON Kernkraftwerk GmbH, Kernkraftwerk Stade, Postfach 1780, " +
251e254e4c2e Added tests for messstellen services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 502
diff changeset
45 "21657 Stade\",\"messStelle\":\"KKW - KKS\",\"mstTyp\":\"M\"," +
251e254e4c2e Added tests for messstellen services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 502
diff changeset
46 "\"netzbetreiberId\":\"03\"}");
506
f2832b156be3 Added tests for netzbetreiber service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 504
diff changeset
47 compare.put("netzbetreiber",
f2832b156be3 Added tests for netzbetreiber service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 504
diff changeset
48 "{\"id\":\"PA\",\"aktiv\":true,\"idfNetzbetreiber\":\"R\"," +
f2832b156be3 Added tests for netzbetreiber service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 504
diff changeset
49 "\"isBmn\":true,\"mailverteiler\":\"PA\",\"netzbetreiber\":" +
f2832b156be3 Added tests for netzbetreiber service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 504
diff changeset
50 "\"Park\",\"zustMstId\":null}");
509
7b3911b0d06e Added tests for pflichtmessgroesse services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 506
diff changeset
51 compare.put("pflichtmessgroesse",
7b3911b0d06e Added tests for pflichtmessgroesse services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 506
diff changeset
52 "{\"id\":33,\"messgroesseId\":904,\"datenbasisId\":4,\"mmtId\":" +
7b3911b0d06e Added tests for pflichtmessgroesse services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 506
diff changeset
53 "\"A3\",\"umweltId\":\"B2\"}");
512
ecec45315b21 Added tests for probenart services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 509
diff changeset
54 compare.put("probenart",
ecec45315b21 Added tests for probenart services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 509
diff changeset
55 "{\"id\":1,\"beschreibung\":\"Einzelprobe\",\"probenart\":\"E\"," +
ecec45315b21 Added tests for probenart services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 509
diff changeset
56 "\"probenartEudfId\":\"A\"}");
514
6774e6aa350d Added tests for probenzusatz service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 512
diff changeset
57 compare.put("probenzusatz",
6774e6aa350d Added tests for probenzusatz service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 512
diff changeset
58 "{\"id\":\"A74\",\"beschreibung\":\"Volumenstrom\"," +
6774e6aa350d Added tests for probenzusatz service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 512
diff changeset
59 "\"eudfKeyword\":null,\"zusatzwert\":\"VOLSTR\",\"mehId\":32}");
517
e5a8b3c7721c Added test for s_ort (location) services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 514
diff changeset
60 compare.put("location",
e5a8b3c7721c Added test for s_ort (location) services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 514
diff changeset
61 "{\"id\":19,\"beschreibung\":\"WW Kassel\",\"bezeichnung\":" +
e5a8b3c7721c Added test for s_ort (location) services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 514
diff changeset
62 "\"T060014\",\"hoeheLand\":null,\"koordXExtern\":\"32531152\"," +
e5a8b3c7721c Added test for s_ort (location) services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 514
diff changeset
63 "\"koordYExtern\":\"5684269\",\"latitude\":51.30888," +
e5a8b3c7721c Added test for s_ort (location) services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 514
diff changeset
64 "\"letzteAenderung\":1376287046332,\"longitude\":9.44693," +
e5a8b3c7721c Added test for s_ort (location) services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 514
diff changeset
65 "\"nutsCode\":\"DE731\",\"unscharf\":\"0\",\"netzbetreiberId\":" +
e5a8b3c7721c Added test for s_ort (location) services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 514
diff changeset
66 "null,\"staatId\":0,\"verwaltungseinheitId\":\"06611000\"," +
e5a8b3c7721c Added test for s_ort (location) services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 514
diff changeset
67 "\"otyp\":\"Z\",\"koordinatenartId\":5}");
520
688d91792c63 Added tests for koordinatenart services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 517
diff changeset
68 compare.put("koordinatenart",
688d91792c63 Added tests for koordinatenart services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 517
diff changeset
69 "{\"id\":2,\"idfGeoKey\":\"D\",\"koordinatenart\":" +
688d91792c63 Added tests for koordinatenart services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 517
diff changeset
70 "\"geografisch-gradiell (WGS84)\"}");
522
90e6bc0d653e Added tests for staat services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 520
diff changeset
71 compare.put("staat",
90e6bc0d653e Added tests for staat services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 520
diff changeset
72 "{\"id\":322,\"eu\":\"0\",\"hklId\":322,\"koordXExtern\":" +
90e6bc0d653e Added tests for staat services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 520
diff changeset
73 "\"-59,6105\",\"koordYExtern\":\"13,0935\",\"staat\":" +
90e6bc0d653e Added tests for staat services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 520
diff changeset
74 "\"Barbados\",\"staatIso\":\"BB\",\"staatKurz\":\"BDS\"," +
90e6bc0d653e Added tests for staat services.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 520
diff changeset
75 "\"koordinatenartId\":4}");
495
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
76 }
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
77
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
78 /**
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
79 * Test the GET Service by requesting all objects.
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
80 *
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
81 * @param baseUrl The url pointing to the test deployment.
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
82 */
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
83 public final void getAll(URL baseUrl, String type, List<Protocol> protocol) {
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
84 System.out.print(".");
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
85 Protocol prot = new Protocol();
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
86 prot.setName(type + "Service");
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
87 prot.setType("get all");
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
88 prot.setPassed(false);
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
89 protocol.add(prot);
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
90 Assert.assertNotNull(type);
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
91 /* Create a client*/
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
92 Client client = ClientBuilder.newClient();
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
93 WebTarget target = client.target(baseUrl + type);
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
94 /* Request all objects*/
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
95 Response response = target.request().get();
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
96 String entity = response.readEntity(String.class);
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
97 try{
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
98 /* Try to parse the response*/
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
99 JsonReader reader = Json.createReader(new StringReader(entity));
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
100 JsonObject content = reader.readObject();
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
101 /* Verify the response*/
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
102 Assert.assertTrue(content.getBoolean("success"));
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
103 prot.addInfo("success", content.getBoolean("success"));
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
104 Assert.assertEquals("200", content.getString("message"));
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
105 prot.addInfo("message", content.getString("message"));
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
106 Assert.assertNotNull(content.getJsonArray("data"));
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
107 prot.addInfo("objects", content.getJsonArray("data").size());
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
108 }
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
109 catch(JsonException je) {
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
110 prot.addInfo("exception", je.getMessage());
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
111 Assert.fail(je.getMessage());
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
112 }
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
113 prot.setPassed(true);
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
114 }
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
115
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
116 public final void getById(
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
117 URL baseUrl,
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
118 String type,
502
ff5e10f2dc8a Added tests for messmethode service.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 499
diff changeset
119 Object id,
495
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
120 List<Protocol> protocol
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
121 ) {
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
122 System.out.print(".");
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
123 Protocol prot = new Protocol();
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
124 prot.setName(type + "Service");
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
125 prot.setType("get by Id");
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
126 prot.setPassed(false);
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
127 protocol.add(prot);
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
128 try {
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
129 /* Create a json object from static string*/
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
130 JsonReader fromStringRreader =
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
131 Json.createReader(new StringReader(compare.get(type)));
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
132 JsonObject comp = fromStringRreader.readObject();
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
133 /* Create a client*/
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
134 Client client = ClientBuilder.newClient();
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
135 WebTarget target = client.target(baseUrl + type +"/" + id);
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
136 prot.addInfo(type + "Id", id);
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
137 /* Request an object by id*/
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
138 Response response = target.request().get();
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
139 String entity = response.readEntity(String.class);
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
140 /* Try to parse the response*/
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
141 JsonReader fromServiceReader =
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
142 Json.createReader(new StringReader(entity));
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
143 JsonObject content = fromServiceReader.readObject();
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
144 /* Verify the response*/
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
145 Assert.assertTrue(content.getBoolean("success"));
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
146 prot.addInfo("success", content.getBoolean("success"));
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
147 Assert.assertEquals("200", content.getString("message"));
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
148 prot.addInfo("message", content.getString("message"));
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
149 Assert.assertEquals(comp,
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
150 content.getJsonObject("data"));
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
151 prot.addInfo("object", "equals");
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
152 }
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
153 catch(JsonException je) {
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
154 prot.addInfo("exception", je.getMessage());
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
155 Assert.fail(je.getMessage());
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
156 }
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
157 prot.setPassed(true);
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
158 }
705e7d7c5f2c Added test class for stammdaten including first tests for datenbasis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
159 }
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)