annotate src/test/java/de/intevation/lada/test/land/StatusTest.java @ 832:59c51da59b30

Refactored test environment. Land tests are using arquillian persistence extension (built on DBUnit).
author Raimund Renkert <raimund.renkert@intevation.de>
date Fri, 18 Dec 2015 18:01:00 +0100
parents
children cb1cfc8c81ed
rev   line source
832
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
1 package de.intevation.lada.test.land;
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
2
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
3 import java.net.URL;
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
4 import java.util.Arrays;
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
5 import java.util.List;
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
6
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
7 import javax.json.JsonObject;
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
8 import javax.json.JsonObjectBuilder;
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
9 import javax.json.JsonValue;
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
10
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
11 import org.junit.Assert;
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
12
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
13 import de.intevation.lada.Protocol;
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
14
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
15 public class StatusTest extends ServiceTest {
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
16
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
17 private JsonObject expectedById;
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
18 private JsonObject create;
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
19
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
20 /**
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
21 * @return The test protocol
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
22 */
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
23 public List<Protocol> getProtocol() {
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
24 return protocol;
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
25 }
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
26
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
27 @Override
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
28 public void init(
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
29 URL baseUrl,
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
30 List<Protocol> protocol
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
31 ) {
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
32 super.init(baseUrl, protocol);
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
33 // Attributes with timestamps
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
34 timestampAttributes = Arrays.asList(new String[]{
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
35 "datum",
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
36 "treeModified"
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
37 });
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
38
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
39 // Prepare expected object
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
40 JsonObject content = readJsonResource("/datasets/dbUnit_messung.json");
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
41 JsonObject status = content.getJsonArray("land.status_protokoll").getJsonObject(0);
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
42 JsonObjectBuilder builder = convertObject(status);
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
43 builder.add("parentModified", 1450371851654L);
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
44 builder.add("readonly", JsonValue.FALSE);
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
45 builder.add("owner", JsonValue.TRUE);
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
46 expectedById = builder.build();
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
47 Assert.assertNotNull(expectedById);
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
48
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
49 // Load object to test POST request
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
50 create = readJsonResource("/datasets/status.json");
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
51 Assert.assertNotNull(create);
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
52 }
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
53
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
54 public final void execute() {
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
55 getAll("status", "rest/status?messungsId=1000");
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
56 getById("status", "rest/status/1000", expectedById);
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
57 //update("status", "rest/status/1000", "text", "Initialer Status", "Initialer Status geƤndert");
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
58 //JsonObject created =
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
59 create("status", "rest/status", create);
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
60 //delete("status", "rest/status/" + created.getJsonObject("data").get("id"));
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
61 }
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
62
59c51da59b30 Refactored test environment.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
63 }
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)