Mercurial > dive4elements > river
diff gwt-client/src/test/java/test/bundu/Segment.java @ 9439:ce0a48b93f4b
bundu jUnit test first attempt
author | gernotbelger |
---|---|
date | Mon, 20 Aug 2018 16:57:25 +0200 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gwt-client/src/test/java/test/bundu/Segment.java Mon Aug 20 16:57:25 2018 +0200 @@ -0,0 +1,73 @@ +/** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde + * Software engineering by + * Björnsen Beratende Ingenieure GmbH + * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt + * + * This file is Free Software under the GNU AGPL (>=v3) + * and comes with ABSOLUTELY NO WARRANTY! Check out the + * documentation coming with Dive4Elements River for details. + */ +package test.bundu; + +import java.util.List; + +import org.dive4elements.river.client.shared.model.Data; +import org.dive4elements.river.client.shared.model.DataItem; +import org.dive4elements.river.client.shared.model.DefaultData; +import org.dive4elements.river.client.shared.model.DefaultDataItem; + +/** + * @author Domenico Nardi Tironi + * + */ +public class Segment { + + private final String gaugeName; + private final String fromKm; + private final String toKm; + private final String qValue; + + private static final String SEPARATOR = ";"; + private static final String GAUGE_SEPARATOR = ":"; + + public Segment(final String gaugeName, final double fromKm, final double toKm, final double qValue) { + this.gaugeName = gaugeName; + this.fromKm = String.valueOf(fromKm); + this.toKm = String.valueOf(toKm); + this.qValue = String.valueOf(qValue); + } + + private static String getSegmentString(final List<Segment> segments) { + + // 703.3;710.0;Düsseldorf;5930.0:670.0;703.3;Köln;5822.0 (PRoblem: diese sachen werden auf Server-Seite gemacht. Ich + // möchte ungern die pegelweise From-To-Ermittlung im Client nachbauen, daher verlange ich fertige Segments. + final StringBuilder builder = new StringBuilder(); + for (int i = 0; i < segments.size(); i++) { + final Segment s = segments.get(i); + if (i > 0) + builder.append(GAUGE_SEPARATOR); + builder.append(s.fromKm).append(SEPARATOR).append(s.toKm).append(SEPARATOR).append(s.gaugeName).append(SEPARATOR).append(s.qValue); + } + return builder.toString(); + } + + public static Data[] getDataforFeed(final String dataName, final List<Segment> segments) { + + final String wspl = getSegmentString(segments); + + final DataItem wsplItem = new DefaultDataItem(dataName, dataName, wspl); + + return new Data[] { + + new DefaultData("wq_isq", null, null, new DataItem[] { new DefaultDataItem("wq_isq", "wq_isq", "true") }), + new DefaultData("wq_isfree", null, null, new DataItem[] { new DefaultDataItem("wq_isfree", "wq_isfree", "false") }), + new DefaultData("wq_isrange", null, null, new DataItem[] { new DefaultDataItem("wq_isrange", "wq_isrange", "false") }), + new DefaultData("wq_from", null, null, new DataItem[] { new DefaultDataItem("wq_from", "wq_from", "") }), + new DefaultData("wq_to", null, null, new DataItem[] { new DefaultDataItem("wq_to", "wq_to", "") }), + new DefaultData("wq_step", null, null, new DataItem[] { new DefaultDataItem("wq_step", "wq_step", "") }), + + new DefaultData(dataName, null, null, new DataItem[] { wsplItem }) }; + + } + +}