view gwt-client/src/test/java/test/sinfo/SinfoBerechnungsartenTester.java @ 9424:da19f1f58d72

jUnit test uinfo salix regional
author gernotbelger
date Fri, 17 Aug 2018 14:29:05 +0200
parents e567fac95e3d
children 86e522bc7f36
line wrap: on
line source
package test.sinfo;

import java.io.IOException;

import org.dive4elements.artifacts.httpclient.exceptions.ConnectionException;
import org.dive4elements.river.client.shared.exceptions.ServerException;

/**
 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
 */

// REMARK: ignored, because maven will auto-test all tests, but this one needs a running river-artifacts
// For running the JUunit test, the annotation @Ignore has to be disabled
import org.junit.Ignore;
import org.junit.Test;

import test.AbstractBerechnungsartenTester;
import test.ICalcMode;
import test.IFilenameMapper;
import test.SimpleRecommendation;
import test.sinfo.SinfoFloodDurationRiversideChoice.RiversideChoiceKey;

@Ignore
public final class SinfoBerechnungsartenTester extends AbstractBerechnungsartenTester {
    // has to be public for jUnit-Test
    public static enum CalcMode implements ICalcMode {
        sinfo_calc_flow_depth, sinfo_calc_flow_depth_development, sinfo_calc_flow_depth_minmax, sinfo_calc_collision, sinfo_calc_transport_bodies_heights, sinfo_calc_flood_duration;

    };

    public static enum SinfoFilenameMapper implements IFilenameMapper {

        FT_MINMAX_RHEIN_1_FILE("/sinfo/flowdepthminmax/sinfo_minmaxft_01.csv"), //
        FT_MINMAX_ELBE_2_FILE("/sinfo/flowdepthminmax/sinfo_minmaxft_02.csv"), //

        FT_RHEIN_1_FILE("/sinfo/flowdepth/sinfo_ft_01.csv"), //
        FT_RHEIN_2_FILE("/sinfo/flowdepth/sinfo_ft_02.csv"), //

        FTE_ELBE_FILE("/sinfo/flowdepthdevelopment/sinfo_fte_01.csv"), //
        FTE_RHEIN_FILE("/sinfo/flowdepthdevelopment/sinfo_fte_02.csv"),

        TKH_1_ELBE_FILE("/sinfo/flowdepthtkh/sinfo_tkh_01.csv"), //
        TKH_2_RHEIN_FILE("/sinfo/flowdepthtkh/sinfo_tkh_02.csv"),

        TKH_TKH_RHEIN_FILE("/sinfo/tkh/sinfo_tkh_export.csv"), //

        COLLISION_RHEIN_HELLO_WORLD_FILE("/sinfo/collision/sinfo_collision_export.csv"), //
        COLLISION_RHEIN_EPOCH_HELLO_WORLD_FILE("/sinfo/collision/sinfo_collision_epoch_export.csv"), //

        FLOOD_DURATION_HELLO_WORLD_FILE("/sinfo/floodduration/sinfo_floodduration_export.csv");
        private final String filename;

        SinfoFilenameMapper(final String filename) {
            this.filename = filename;
        }

        @Override
        public String getFilename() {
            return this.filename;
        }
    }

    /* FLOWDEPTH MIN MAX */
    @Test
    public void testFTMINMAX1() throws ServerException, IOException {

        SinfoRunnerCreatorHelper.createSinfoFlowdepthMinMaxTest(SinfoFilenameMapper.FT_MINMAX_RHEIN_1_FILE, 430, 450, River.Rhein,
                new SimpleRecommendation("bedheight", "bedheight-single-79-2004-MW-DGM-2004_Epoche_NHN", "longitudinal_section"),
                new SimpleRecommendation("staticwqkms", "additionals-wstv-0-269", "longitudinal_section", "Amtl.Festlegung_GlQ(2002)")

        ).runTest(overrideFileExport() != null ? overrideFileExport() : true);
    }

    @Test
    public void testFTMINMAX2() throws ConnectionException, ServerException, IOException {
        SinfoRunnerCreatorHelper.createSinfoFlowdepthMinMaxTest(SinfoFilenameMapper.FT_MINMAX_ELBE_2_FILE, 0, 90, River.Elbe,
                // first
                new SimpleRecommendation("bedheight", "bedheight-single-58-2015-MW-FP-2015_0-502", "longitudinal_section", "FP-2015_0-502"),
                new SimpleRecommendation("staticwqkms", "fixations-wstv-0-156", "longitudinal_section", "02.09.2004"),

                // second
                new SimpleRecommendation("bedheight", "bedheight-single-58-2015-MW-FP-2015_0-502", "longitudinal_section", "FP-2015_0-502"),
                new SimpleRecommendation("staticwqkms", "fixations-wstv-1-156", "longitudinal_section", "03.09.2004"))
                .runTest(overrideFileExport() != null ? overrideFileExport() : true);
    }

    /* FLOWDEPTH */
    @Test
    public void testRhein1FT() throws ConnectionException, ServerException, IOException {

        SinfoRunnerCreatorHelper.createSinfoFlowdepthTest(SinfoFilenameMapper.FT_RHEIN_1_FILE, 350, 380, River.Rhein, false,

                new SimpleRecommendation("bedheight", "bedheight-soundings-79-2004-DGM-2004_Epoche_NHN", "longitudinal_section"),
                new SimpleRecommendation("staticwqkms", "additionals-wstv-0-415", "longitudinal_section"))
                .runTest(overrideFileExport() != null ? overrideFileExport() : true);

    }

    @Test
    public void testRhein2FT() throws ConnectionException, ServerException, IOException {
        SinfoRunnerCreatorHelper
                .createSinfoFlowdepthTest(SinfoFilenameMapper.FT_RHEIN_2_FILE, 655, 675, River.Rhein, true,
                        new SimpleRecommendation("bedheight", "bedheight-soundings-92-2004-NIEDERRHEIN_QP-2004_Epoche_NHN", "longitudinal_section"),
                        new SimpleRecommendation("staticwqkms", "fixations-wstv-0-323", "longitudinal_section"))

                .runTest(overrideFileExport() != null ? overrideFileExport() : true);
    }

    /* FLOWDEPTH DEVELOPMENT */

    @Test
    public void testElbeFTE() throws ConnectionException, ServerException, IOException {
        SinfoRunnerCreatorHelper.createSinfoFlowdepthDevelopmentTest(SinfoFilenameMapper.FTE_ELBE_FILE, 210, 230, River.Elbe,
                // current
                new SimpleRecommendation("bedheight", "bedheight-soundings-66-2008-FP-QP-2008",
                        // "bedheight-single-66-2008-MW-FP-QP-2008",
                        "longitudinal_section"),
                new SimpleRecommendation("staticwqkms", "fixations-wstv-0-196", "longitudinal_section", "05.05.2008"), // sicher

                // historical
                new SimpleRecommendation("bedheight", "bedheight-soundings-70-1995-QP-1995",
                        // "bedheight-single-70-1995-MW-QP-1995",
                        "longitudinal_section"),
                new SimpleRecommendation("staticwqkms", "fixations-wstv-0-186", "longitudinal_section", "18.03.1997")// sicher
        ).runTest(overrideFileExport() != null ? overrideFileExport() : true);
    }

    @Test
    public void testRheinFTE() throws ConnectionException, ServerException, IOException {
        SinfoRunnerCreatorHelper.createSinfoFlowdepthDevelopmentTest(SinfoFilenameMapper.FTE_RHEIN_FILE, 655, 665, River.Rhein,
                // current
                new SimpleRecommendation("bedheight", "bedheight-single-94-2008-MW-NIEDERRHEIN_QP-2008_Epoche_NHN",
                        // "bedheight-single....",
                        "longitudinal_section"),
                new SimpleRecommendation("staticwqkms", "fixations-wstv-0-372", "longitudinal_section", "23.09.2009-1"), // sicher

                // historical
                new SimpleRecommendation("bedheight", "bedheight-single-89-1991-MW-NIEDERRHEIN_QP-1991_Epoche_NHN",
                        // "bedheight-soundings-89-1991-NIEDERRHEIN_QP-1991_Epoche_NHN",
                        "longitudinal_section"),
                new SimpleRecommendation("staticwqkms", "fixations-wstv-0-374", "longitudinal_section", "23.09.1991") // sicher
        ).runTest(overrideFileExport() != null ? overrideFileExport() : true);
    }

    /* TKH */

    @Test
    public void testElbeTKH_1() throws ConnectionException, ServerException, IOException {
        SinfoRunnerCreatorHelper.createSinfoTkhTest(SinfoFilenameMapper.TKH_1_ELBE_FILE, 150, 160, River.Elbe, new double[] { 1520.0 })
                .runTest(overrideFileExport() != null ? overrideFileExport() : true);
    }

    @Test
    public void testRheinTKH_2() throws ConnectionException, ServerException, IOException {
        SinfoRunnerCreatorHelper.createSinfoTkhTest(SinfoFilenameMapper.TKH_2_RHEIN_FILE, 600, 610, River.Rhein, new double[] { 6125, 6526 })
                .runTest(overrideFileExport() != null ? overrideFileExport() : true);
    }

    @Test
    public void testTKhTkh() throws ConnectionException, ServerException, IOException {
        SinfoRunnerCreatorHelper.createSinfoTkhTest(SinfoFilenameMapper.TKH_TKH_RHEIN_FILE, 0, 182.4, River.Beispielfluss, new double[] { 1059.446 })
                .runTest(overrideFileExport() != null ? overrideFileExport() : true);
    }

    @Test
    public void testCollision() throws ConnectionException, ServerException, IOException {
        SinfoRunnerCreatorHelper
                .createSinfoCollisionYearsTest(SinfoFilenameMapper.COLLISION_RHEIN_HELLO_WORLD_FILE, 336.2, 866.3, River.Rhein, new int[] { 2006, 2008 })
                .runTest(overrideFileExport() != null ? overrideFileExport() : true);
    }

    @Test
    public void testCollisionEpochs() throws ConnectionException, ServerException, IOException {
        SinfoRunnerCreatorHelper
                .createSinfoCollisionEpochsTest(SinfoFilenameMapper.COLLISION_RHEIN_EPOCH_HELLO_WORLD_FILE, 336.2, 866.3, River.Rhein, "2006,2008;")
                .runTest(overrideFileExport() != null ? overrideFileExport() : true);
    }

    @Test
    public void testFloodDuration() throws ConnectionException, ServerException, IOException {
        SinfoRunnerCreatorHelper
                .createSinfoFloodDurationTest(SinfoFilenameMapper.FLOOD_DURATION_HELLO_WORLD_FILE, 0, 182.4, River.Beispielfluss, new double[] { 2091.011 },
                        true, RiversideChoiceKey.BOTH)

                .runTest(overrideFileExport() != null ? overrideFileExport() : true);
    }

}

http://dive4elements.wald.intevation.org