/* * GeoTools - The Open Source Java GIS Toolkit * http://geotools.org * * (C) 2002-2008, Open Source Geospatial Foundation (OSGeo) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; * version 2.1 of the License. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. */ package org.geotools.data.monetdb; import java.util.Collections; import java.util.HashMap; import junit.framework.TestCase; import org.geotools.data.DataStore; import org.geotools.data.jdbc.datasource.ManageableDataSource; import org.geotools.jdbc.JDBCDataStore; import org.geotools.jdbc.JDBCDataStoreFactory; import org.h2.tools.Server; /** * * * @source $URL$ */ public class MonetDBDataStoreFactoryTest extends TestCase { MonetDBDataStoreFactory factory; HashMap params; protected void setUp() throws Exception { factory = new MonetDBDataStoreFactory(); params = new HashMap(); params.put(JDBCDataStoreFactory.DBTYPE.key, "monetdb"); params.put(MonetDBDataStoreFactory.HOST.key, "localhost"); params.put(MonetDBDataStoreFactory.DATABASE.key, "test"); params.put(MonetDBDataStoreFactory.USER.key, "monetdb"); params.put(MonetDBDataStoreFactory.PASSWD.key, "monetdb"); } public void testCanProcess() throws Exception { assertFalse(factory.canProcess(Collections.EMPTY_MAP)); assertTrue(factory.canProcess(params)); } public void testCreateDataStore() throws Exception { JDBCDataStore ds = factory.createDataStore( params ); assertNotNull( ds ); assertTrue(ds.getDataSource() instanceof ManageableDataSource); ds.dispose(); } public void testTCP() throws Exception { params.put(MonetDBDataStoreFactory.PASSWD.key, "monetdbFAIL"); DataStore ds = factory.createDataStore(params); try { ds.getTypeNames(); fail("Should not have made a connection."); } catch(Exception ok) {} params.put(MonetDBDataStoreFactory.PASSWD.key, "monetdb"); ds = factory.createDataStore(params); try { ds.getTypeNames(); } catch(Exception fail) { fail("Should have made a connection."); } ds.dispose(); } }