Mercurial > lada > lada-server
annotate src/test/java/de/intevation/lada/test/stamm/DatensatzErzeugerTest.java @ 835:075f511243d5
Added tests for stammdaten
* Datensatzerzeuger (GET, PUT, POST, DELETE)
* Probenehmer (GET, PUT, POST, DELETE)
* Messprogrammkategorie (GET, PUT, POST, DELETE)
* Ort (GET, PUT, POST, DELETE)
author | Raimund Renkert <raimund.renkert@intevation.de> |
---|---|
date | Fri, 08 Jan 2016 12:09:12 +0100 |
parents | |
children | d0a591b3eade |
rev | line source |
---|---|
835
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.lada.test.stamm; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
2 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
3 import java.net.URL; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
4 import java.util.Arrays; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
5 import java.util.List; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
6 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
7 import javax.json.JsonObject; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
8 import javax.json.JsonObjectBuilder; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
9 import javax.json.JsonValue; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
10 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
11 import org.junit.Assert; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
12 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
13 import de.intevation.lada.Protocol; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
14 import de.intevation.lada.test.ServiceTest; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
15 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
16 public class DatensatzErzeugerTest extends ServiceTest { |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
17 private JsonObject expectedById; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
18 private JsonObject create; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
19 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
20 /** |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
21 * @return The test protocol |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
22 */ |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
23 public List<Protocol> getProtocol() { |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
24 return protocol; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
25 } |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
26 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
27 @Override |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
28 public void init( |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
29 URL baseUrl, |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
30 List<Protocol> protocol |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
31 ) { |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
32 super.init(baseUrl, protocol); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
33 // Attributes with timestamps |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
34 timestampAttributes = Arrays.asList(new String[]{ |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
35 "letzteAenderung" |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
36 }); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
37 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
38 // Prepare expected object |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
39 JsonObject content = readJsonResource("/datasets/dbUnit_datensatzerzeuger.json"); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
40 JsonObject erzeuger = content.getJsonArray("stammdaten.datensatz_erzeuger").getJsonObject(0); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
41 JsonObjectBuilder builder = convertObject(erzeuger); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
42 expectedById = builder.build(); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
43 Assert.assertNotNull(expectedById); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
44 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
45 // Load object to test POST request |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
46 create = readJsonResource("/datasets/datensatzerzeuger.json"); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
47 Assert.assertNotNull(create); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
48 } |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
49 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
50 public final void execute() { |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
51 getAll("datensatzerzeuger", "rest/datensatzerzeuger"); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
52 getById("datensatzerzeuger", "rest/datensatzerzeuger/1000", expectedById); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
53 update("datensatzerzeuger", "rest/datensatzerzeuger/1000", "bezeichnung", "Testbezeichnung", "geƤndert"); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
54 JsonObject created = create("datensatzerzeuger", "rest/datensatzerzeuger", create); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
55 delete("datensatzerzeuger", "rest/datensatzerzeuger/" + created.getJsonObject("data").get("id")); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
56 } |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
57 } |