annotate gwt-client/src/test/java/test/SinfoCollisionRunner.java @ 9417:46e3e23cca0b

sinfo.collision jUnit-Test
author gernotbelger
date Thu, 16 Aug 2018 17:32:05 +0200
parents
children
rev   line source
9417
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
1 /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
2 * Software engineering by
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
3 * Björnsen Beratende Ingenieure GmbH
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
5 *
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
6 * This file is Free Software under the GNU AGPL (>=v3)
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
8 * documentation coming with Dive4Elements River for details.
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
9 */
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
10 package test;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
11
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
12 import java.io.IOException;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
13
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
14 import org.dive4elements.artifacts.httpclient.exceptions.ConnectionException;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
15 import org.dive4elements.river.client.shared.exceptions.ServerException;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
16 import org.dive4elements.river.client.shared.model.Data;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
17 import org.dive4elements.river.client.shared.model.DataItem;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
18 import org.dive4elements.river.client.shared.model.DefaultDataItem;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
19 import org.dive4elements.river.client.shared.model.StringOptionsData;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
20
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
21 import test.BerechnungsartenTester.CalcMode;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
22 import test.BerechnungsartenTester.FilenameMapper;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
23 import test.BerechnungsartenTester.River;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
24
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
25 /**
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
26 * @author Domenico Nardi Tironi
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
27 *
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
28 */
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
29 public class SinfoCollisionRunner extends AbstractModuleRunner {
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
30
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
31 private final int[] years;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
32 private final String epochs;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
33 private boolean isYears; // cannot be final because of the ternary expression
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
34
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
35 public SinfoCollisionRunner(final String username, final String password, final FilenameMapper file, final double from, final double to, final River river,
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
36 final int[] years, final String epochs) throws ConnectionException, ServerException {
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
37 super(username, password, AbstractModuleRunner.Infotype.sinfo, CalcMode.sinfo_calc_collision, file, from, to, river);
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
38 this.years = years;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
39 this.epochs = epochs;
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
40 this.isYears = (years != null) ? (this.isYears = true) : (this.isYears = false);
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
41 }
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
42
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
43 @Override
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
44 public void runTest(final boolean exportToFile) throws ServerException, IOException {
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
45 /* Select River */
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
46 super.selectRiver();
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
47
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
48 /* Select CalcMode */
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
49 super.selectCalcMode();
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
50
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
51 super.feed(new Data[] {
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
52 new StringOptionsData("ld_mode", "ld_mode", new DataItem[] { new DefaultDataItem("distance_only", "distance_only", "distance_only") }) }); // ggf
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
53
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
54 /* Select Range */
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
55 super.selectRange();
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
56
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
57 /* Year or Epoch? eigentlich vermutlich überflüssig */
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
58 final String yeSelectStr = this.isYears ? "state.sinfo.year" : "state.sinfo.epoch";
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
59 final Data yearEpochSelect = new StringOptionsData("ye_select", "ye_select",
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
60 new DataItem[] { new DefaultDataItem(yeSelectStr, yeSelectStr, yeSelectStr) });
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
61 feedAndGo(new Data[] { yearEpochSelect }, 0);
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
62
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
63 if (this.years != null) {
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
64 final StringBuilder sb = new StringBuilder();
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
65 for (final int value : this.years) {
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
66 sb.append(String.valueOf(value));
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
67 sb.append(" ");
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
68 }
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
69 final Data yearsData = new StringOptionsData("years", "years", new DataItem[] { new DefaultDataItem("years", "years", sb.toString()) });
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
70 feedAndGo(new Data[] { yearsData }, 0);
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
71 } else if (this.epochs != null) {
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
72 final Data data = new StringOptionsData("epochs", "epochs", new DataItem[] { new DefaultDataItem("epochs", "epochs", this.epochs) });
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
73 feedAndGo(new Data[] { data }, 0);
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
74 }
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
75 describeCollection();
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
76
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
77 super.export(exportToFile);
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
78 }
46e3e23cca0b sinfo.collision jUnit-Test
gernotbelger
parents:
diff changeset
79 }

http://dive4elements.wald.intevation.org