Mercurial > lada > lada-server
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 } |