Hi all ref: https://github.com/geotools/geotools/pull/2810
I am trying to build a unit test for my first contribution to the GeoTools code base. So far, Andrea has given me some advice on how to proceed. However, I am stuck with setting up the online tests - they continuously fail with errors like schema does not exist e.g. [ERROR] testRendererBehaviour(org.geotools.data.postgis.PostGIS3DOnlineTest) Time elapsed: 2.959 s <<< ERROR! java.io.IOException: *Schema 'line3d' does not exist.* I have configured a postgis.properties file with details of my local postgis installation. I can see the tables *are* being created in the test schema (that's the first schema in the search_path). The first one created is (table) *arraytest*. I tried using maven: in directory /geotools/modules/plugin/jdbc/jdbc-postgis mvn install -P online Throws a bunch of errors (see above) in the tests. I tried using eclipse (debugging normal GeoServer/GeoTools code works fine) by right clicking on PostGISArrayOnlineTest.java and Debug, JUnit Test. I am able to step through the unit test code, setUpData() works (delete the previous table, create it again with known test data), but inside JDBCDataStore(ContentDataStore).*getFeatureSource*(Name, Transaction) line: 331 with typeName = arraytest, there is no entry in the ContentDataStore, and thus: throw new IOException("Schema '" + name + "' does not exist."); BTW, I believe that the word "Schema" here is incorrect, as we're looking for a Table arraytest. I question, has the test been set up correctly, am I running it correctly? What am I missing? I really want to contribute to GeoServer/GeoTools, but I am beyond frustration with the initial complexity. Thanks Peter On Thu, 20 Feb 2020 at 17:34, Andrea Aime <notificati...@github.com> wrote: > *@aaime* commented on this pull request. > ------------------------------ > > In modules/library/jdbc/src/main/java/org/geotools/jdbc/KeysFetcher.java > <https://github.com/geotools/geotools/pull/2810#discussion_r382076263>: > > > @@ -420,6 +423,27 @@ public Object getNext(Connection cx) { > } > } > > + private static class FromUuid extends KeyFetcher { > > The test should be done in GeoTools. There are plenty of JUnit tests > talking to a database in the gt-jdbc-postgresql, you probably need to work > either on PostgisPrimaryKeyFinderOnlineTest, or > PostgisPrimaryKeyOnlineTest, or PostGISUuidOnlineTest, extending the > associated test setup, and probably adding a new test method in the postgis > specific subclasses (e.g., PostGISUuidOnlineTest) rather than the base > class shared across databases (e.g., JDBCUuidTestSetup). > > When you try to run it, it will create a > $HOME/.geotools/postgis.properties.example file and fail, rename the > created file it into postgis.properties and fix the connection properties > to point to a database that one can write onto, run it again, make it pass. > > — > You are receiving this because you authored the thread. > Reply to this email directly, view it on GitHub > <https://github.com/geotools/geotools/pull/2810?email_source=notifications&email_token=ABLPQUZYEEB5JYKLTGEANS3RD2PDJA5CNFSM4KXC3EC2YY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCWJ3DEY#discussion_r382076263>, > or unsubscribe > <https://github.com/notifications/unsubscribe-auth/ABLPQUZFXNJEBJOS6G7Y4ALRD2PDJANCNFSM4KXC3ECQ> > . >
_______________________________________________ GeoTools-Devel mailing list GeoTools-Devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geotools-devel