Mercurial > lada > lada-server
annotate src/test/java/de/intevation/lada/test/stamm/OrtTest.java @ 978:1a3a3996e072
Avoid duplicate entries in interface tests.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Tue, 14 Jun 2016 18:31:29 +0200 |
parents | d0a591b3eade |
children | 59bdb52bac1c |
rev | line source |
---|---|
849
d0a591b3eade
Added missing file header.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
835
diff
changeset
|
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz |
d0a591b3eade
Added missing file header.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
835
diff
changeset
|
2 * Software engineering by Intevation GmbH |
d0a591b3eade
Added missing file header.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
835
diff
changeset
|
3 * |
d0a591b3eade
Added missing file header.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
835
diff
changeset
|
4 * This file is Free Software under the GNU GPL (v>=3) |
d0a591b3eade
Added missing file header.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
835
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out |
d0a591b3eade
Added missing file header.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
835
diff
changeset
|
6 * the documentation coming with IMIS-Labordaten-Application for details. |
d0a591b3eade
Added missing file header.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
835
diff
changeset
|
7 */ |
835
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
8 package de.intevation.lada.test.stamm; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
9 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
10 import java.net.URL; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
11 import java.util.Arrays; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
12 import java.util.List; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
13 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
14 import javax.json.JsonObject; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
15 import javax.json.JsonObjectBuilder; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
16 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
17 import org.junit.Assert; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
18 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
19 import de.intevation.lada.Protocol; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
20 import de.intevation.lada.test.ServiceTest; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
21 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
22 public class OrtTest extends ServiceTest { |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
23 private JsonObject expectedById; |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
24 private JsonObject create; |
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 * @return The test protocol |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
28 */ |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
29 public List<Protocol> getProtocol() { |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
30 return 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 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
33 @Override |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
34 public void init( |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
35 URL baseUrl, |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
36 List<Protocol> protocol |
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 super.init(baseUrl, protocol); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
39 // Attributes with timestamps |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
40 timestampAttributes = Arrays.asList(new String[]{ |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
41 "letzteAenderung" |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
42 }); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
43 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
44 // Prepare expected object |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
45 JsonObject content = readJsonResource("/datasets/dbUnit_ort.json"); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
46 JsonObject erzeuger = content.getJsonArray("stammdaten.ort").getJsonObject(0); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
47 JsonObjectBuilder builder = convertObject(erzeuger); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
48 expectedById = builder.build(); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
49 Assert.assertNotNull(expectedById); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
50 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
51 // Load object to test POST request |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
52 create = readJsonResource("/datasets/ort.json"); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
53 Assert.assertNotNull(create); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
54 } |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
55 |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
56 public final void execute() { |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
57 getAll("ort", "rest/ort"); |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
58 getById("ort", "rest/ort/1000", expectedById); |
978
1a3a3996e072
Avoid duplicate entries in interface tests.
Tom Gottfried <tom@intevation.de>
parents:
849
diff
changeset
|
59 int createdId = create("ort", "rest/ort", create) |
1a3a3996e072
Avoid duplicate entries in interface tests.
Tom Gottfried <tom@intevation.de>
parents:
849
diff
changeset
|
60 .getJsonObject("data").getInt("id"); |
1a3a3996e072
Avoid duplicate entries in interface tests.
Tom Gottfried <tom@intevation.de>
parents:
849
diff
changeset
|
61 update("ort", "rest/ort/" + createdId, |
1a3a3996e072
Avoid duplicate entries in interface tests.
Tom Gottfried <tom@intevation.de>
parents:
849
diff
changeset
|
62 "langtext", "Langer Text", "Längerer Text"); |
1a3a3996e072
Avoid duplicate entries in interface tests.
Tom Gottfried <tom@intevation.de>
parents:
849
diff
changeset
|
63 delete("ort", "rest/ort/" + createdId); |
835
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
64 } |
075f511243d5
Added tests for stammdaten
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
65 } |