view src/test/java/de/intevation/lada/test/land/MessprogrammTest.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
line wrap: on
line source
package de.intevation.lada.test.land;

import java.net.URL;
import java.util.Arrays;
import java.util.List;

import javax.json.JsonObject;
import javax.json.JsonObjectBuilder;
import javax.json.JsonValue;

import org.junit.Assert;

import de.intevation.lada.Protocol;

public class MessprogrammTest extends ServiceTest {
    private JsonObject expectedById;
    private JsonObject create;

    /**
     * @return The test protocol
     */
    public List<Protocol> getProtocol() {
        return protocol;
    }

    @Override
    public void init(
        URL baseUrl,
        List<Protocol> protocol
    ) {
        super.init(baseUrl, protocol);
        // Attributes with timestamps
        timestampAttributes = Arrays.asList(new String[]{
            "letzteAenderung",
            "treeModified"
        });

        // Prepare expected object
        JsonObject content = readJsonResource("/datasets/dbUnit_messprogramm.json");
        JsonObject messprogramm = content.getJsonArray("land.messprogramm").getJsonObject(0);
        JsonObjectBuilder builder = convertObject(messprogramm);
        builder.add("baId", JsonValue.NULL);
        builder.add("gueltigVon", JsonValue.NULL);
        builder.add("gueltigBis", JsonValue.NULL);
        builder.add("intervallOffset", JsonValue.NULL);
        builder.add("ortId", JsonValue.NULL);
        builder.add("probeKommentar", JsonValue.NULL);
        builder.add("probeNehmerId", JsonValue.NULL);
        expectedById = builder.build();
        Assert.assertNotNull(expectedById);

        // Load object to test POST request
        create = readJsonResource("/datasets/messprogramm.json");
        Assert.assertNotNull(create);
    }

    public final void execute() {
        getAll("messprogramm", "rest/messprogramm");
        getById("messprogramm", "rest/messprogramm/1000", expectedById);
        filter("messprogramm", "rest/messprogramm?qid=1");
        update("messprogramm", "rest/messprogramm/1000", "mediaDesk", "D: 50 90 01 06 02 05 00 00 00 00 00 00", "D: 50 90 01 06 02 05 00 00 00 00 00 01");
        JsonObject created = create("messprogramm", "rest/messprogramm", create);
        delete("messprogramm", "rest/messprogramm/" + created.getJsonObject("data").get("id"));
    }
}
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)