Mercurial > dive4elements > gnv-client
annotate geo-backend/src/test/java/de/intevation/gnv/geobackend/base/query/QueryExecutorTestCase.java @ 1145:dfe1ac687c7f tip
added tags
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Fri, 28 Sep 2012 12:16:15 +0200 |
parents | ebeb56428409 |
children |
rev | line source |
---|---|
1127
ebeb56428409
Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
887
diff
changeset
|
1 /* |
ebeb56428409
Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
887
diff
changeset
|
2 * Copyright (c) 2010 by Intevation GmbH |
ebeb56428409
Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
887
diff
changeset
|
3 * |
ebeb56428409
Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
887
diff
changeset
|
4 * This program is free software under the LGPL (>=v2.1) |
ebeb56428409
Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
887
diff
changeset
|
5 * Read the file LGPL.txt coming with the software for details |
ebeb56428409
Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
887
diff
changeset
|
6 * or visit http://www.gnu.org/licenses/ if it does not exist. |
ebeb56428409
Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
887
diff
changeset
|
7 */ |
ebeb56428409
Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
887
diff
changeset
|
8 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
9 package de.intevation.gnv.geobackend.base.query; |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
10 |
886
8b442223741c
Ordered imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
885
diff
changeset
|
11 import de.intevation.gnv.geobackend.base.Result; |
8b442223741c
Ordered imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
885
diff
changeset
|
12 import de.intevation.gnv.geobackend.base.ResultDescriptor; |
8b442223741c
Ordered imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
885
diff
changeset
|
13 |
8b442223741c
Ordered imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
885
diff
changeset
|
14 import de.intevation.gnv.geobackend.base.connectionpool.ConnectionPoolFactory; |
8b442223741c
Ordered imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
885
diff
changeset
|
15 |
8b442223741c
Ordered imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
885
diff
changeset
|
16 import de.intevation.gnv.geobackend.base.query.container.QueryContainerFactory; |
8b442223741c
Ordered imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
885
diff
changeset
|
17 |
8b442223741c
Ordered imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
885
diff
changeset
|
18 import de.intevation.gnv.geobackend.base.query.exception.QueryException; |
8b442223741c
Ordered imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
885
diff
changeset
|
19 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
20 import java.io.FileInputStream; |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
21 import java.io.InputStream; |
886
8b442223741c
Ordered imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
885
diff
changeset
|
22 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
23 import java.util.Collection; |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
24 import java.util.Iterator; |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
25 import java.util.Properties; |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
26 |
886
8b442223741c
Ordered imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
885
diff
changeset
|
27 import junit.framework.TestCase; |
8b442223741c
Ordered imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
885
diff
changeset
|
28 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
29 import org.apache.log4j.BasicConfigurator; |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
30 import org.apache.log4j.Logger; |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
31 |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
32 /** |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
33 * TestCase for the QueryExecutor interface |
887
b757def3ff55
Bring @author javadoc tags in form '@author <a href="john.doe@example.com">John Doe</a>'
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
886
diff
changeset
|
34 * @author <a href="mailto:tim.englich@intevation.de">Tim Englich</a> |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
35 * |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
36 */ |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
37 public class QueryExecutorTestCase extends TestCase { |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
38 |
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
39 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
40 /** |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
41 * the logger, used to log exceptions and additonaly information |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
42 */ |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
43 private static Logger log = null; |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
44 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
45 static{ |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
46 BasicConfigurator.configure(); |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
47 log = Logger.getLogger(QueryExecutorTestCase.class); |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
48 } |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
49 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
50 /** |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
51 * Constructor |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
52 * @param name |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
53 */ |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
54 public QueryExecutorTestCase(String name) { |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
55 super(name); |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
56 } |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
57 |
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
58 |
139
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
59 public void testSpatialQuery(){ |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
60 try { |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
61 |
264
5bbdbc0bbddc
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
139
diff
changeset
|
62 this.testQuery(5, "spatial_query", null); |
139
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
63 } catch (QueryException e) { |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
64 log.error(e,e); |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
65 fail(); |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
66 } |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
67 } |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
68 |
266
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
264
diff
changeset
|
69 public void testSpatialQueryWithoutIntersects(){ |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
264
diff
changeset
|
70 try { |
274
ff1b7967e6b9
General CodecCleanup:
Tim Englich <tim.englich@intevation.de>
parents:
269
diff
changeset
|
71 // this.testQuery(286, "spatial_query_without_intersects", null); |
ff1b7967e6b9
General CodecCleanup:
Tim Englich <tim.englich@intevation.de>
parents:
269
diff
changeset
|
72 this.testQuery(0, "spatial_query_without_intersects2", null); |
ff1b7967e6b9
General CodecCleanup:
Tim Englich <tim.englich@intevation.de>
parents:
269
diff
changeset
|
73 this.testQuery(2060, "spatial_query_without_intersects3", null); |
ff1b7967e6b9
General CodecCleanup:
Tim Englich <tim.englich@intevation.de>
parents:
269
diff
changeset
|
74 this.testQuery(0, "spatial_query_without_intersects4", null); |
ff1b7967e6b9
General CodecCleanup:
Tim Englich <tim.englich@intevation.de>
parents:
269
diff
changeset
|
75 this.testQuery(27031, "spatial_query_without_intersects5", null); |
ff1b7967e6b9
General CodecCleanup:
Tim Englich <tim.englich@intevation.de>
parents:
269
diff
changeset
|
76 this.testQuery(8464, "spatial_query_without_intersects6", null); |
266
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
264
diff
changeset
|
77 } catch (QueryException e) { |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
264
diff
changeset
|
78 log.error(e,e); |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
264
diff
changeset
|
79 fail(); |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
264
diff
changeset
|
80 } |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
264
diff
changeset
|
81 } |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
82 |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
83 public void testSpatialQueryWithInnerSelect(){ |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
84 try { |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
85 this.testQuery(1998, "spatial_query_with_innerselect", null); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
86 } catch (QueryException e) { |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
87 log.error(e,e); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
88 fail(); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
89 } |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
90 } |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
91 |
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
92 |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
93 public void testChooseFis(){ |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
94 try { |
379
31595c0a1a33
Revert Changes of the commit of Revision 377 which was unintended
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
95 this.testQuery(1, "choose_fis_query", null); |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
96 } catch (QueryException e) { |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
97 log.error(e, e); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
98 fail(); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
99 } |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
100 } |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
101 |
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
102 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
103 /** |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
104 * Tests if the Databaseconnection can be established and |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
105 * Data could be read from the Database |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
106 */ |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
107 public void testQueryExecutor(){ |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
108 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
109 try { |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
110 |
139
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
111 this.testQuery(6, "mesh", null); |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
112 |
139
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
113 this.testQuery(1, "mesh_id", new String[]{"5"}); |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
114 |
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
115 |
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
116 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
117 } catch (QueryException e) { |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
118 log.error(e,e); |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
119 fail(); |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
120 } |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
121 } |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
122 |
139
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
123 public void testTimeSeriesQueries(){ |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
124 |
139
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
125 try{ |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
126 // Test zum initialisieren der umgebung |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
127 this.testQuery(6, "mesh", null); |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
128 |
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
129 |
139
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
130 this.testQuery(11, "timeseries_stations", new String[]{"4"}); |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
131 this.testQuery(11, "timeseries_stations_op", new String[]{"4"}); |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
132 this.testQuery(1, "timeseries_interval", new String[]{"500042 ", "54"}); |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
133 |
139
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
134 } catch (QueryException e) { |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
135 log.error(e,e); |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
136 fail(); |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
137 } |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
138 |
139
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
139 } |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
140 |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
141 /** |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
142 * @param resultsize |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
143 * @param queryID |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
144 * @param filter |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
145 * @throws QueryException |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
146 */ |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
147 private void testQuery(int resultsize, String queryID, String[] filter) |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
148 throws QueryException { |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
149 long start = System.currentTimeMillis(); |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
150 QueryExecutor queryExecutor = QueryExecutorFactory.getInstance().getQueryExecutor(); |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
151 Collection<Result> results = queryExecutor.executeQuery(queryID, filter); |
274
ff1b7967e6b9
General CodecCleanup:
Tim Englich <tim.englich@intevation.de>
parents:
269
diff
changeset
|
152 // if (results == null || results.size() == 0){ |
ff1b7967e6b9
General CodecCleanup:
Tim Englich <tim.englich@intevation.de>
parents:
269
diff
changeset
|
153 // log.error("Keine Daten erhalten"); |
ff1b7967e6b9
General CodecCleanup:
Tim Englich <tim.englich@intevation.de>
parents:
269
diff
changeset
|
154 // fail(); |
ff1b7967e6b9
General CodecCleanup:
Tim Englich <tim.englich@intevation.de>
parents:
269
diff
changeset
|
155 // }else { |
139
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
156 assertEquals(resultsize, results.size()); |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
157 log.debug(resultsize+" Datens�tze erhalten"); |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
158 Iterator<Result> it = results.iterator(); |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
159 while (it.hasNext()){ |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
160 Result tmpResult = it.next(); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
161 ResultDescriptor resultDescriptor = tmpResult.getResultDescriptor(); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
162 int columns = resultDescriptor.getColumnCount(); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
163 for (int i = 0; i < columns; i++){ |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
164 String columnName = resultDescriptor.getColumnName(i); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
165 Object value = tmpResult.getString(columnName); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
166 log.debug(columnName + " ==> "+value.toString()); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
167 } |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
168 } |
274
ff1b7967e6b9
General CodecCleanup:
Tim Englich <tim.englich@intevation.de>
parents:
269
diff
changeset
|
169 // } |
139
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
170 log.debug("Query dauerte: "+(System.currentTimeMillis()-start) +"ms"); |
9f2eaefe9dd4
Some Log Messages Added.
Tim Englich <tim.englich@intevation.de>
parents:
133
diff
changeset
|
171 } |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
172 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
173 |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
174 |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
175 /** |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
176 * @see junit.framework.TestCase#setUp() |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
177 */ |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
178 @Override |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
179 protected void setUp() throws Exception { |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
180 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
181 super.setUp(); |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
182 InputStream inputStream = new FileInputStream("src/test/ressources/ArcSDEConnectionPoolTestCase.properties"); |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
183 Properties properties = new Properties(); |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
184 properties.load(inputStream); |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
185 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
186 ConnectionPoolFactory cpf = ConnectionPoolFactory.getInstance(); |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
187 cpf.initializeConnectionPool(properties); |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
188 |
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
189 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
190 inputStream = new FileInputStream("src/test/ressources/QueryExecutorTestCase.properties"); |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
191 properties = new Properties(); |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
192 properties.load(inputStream); |
885
1c3efbd2fc5a
Removes trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
379
diff
changeset
|
193 |
132
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
194 QueryContainerFactory qcf = QueryContainerFactory.getInstance(); |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
195 qcf.initializeQueryContainer(properties); |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
196 } |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
197 |
5a583cff97ea
Implementation of the Datainfrastructure for fetching Data from different DataStores.
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
198 } |