/*
 *    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.jdbc;

import org.geotools.data.DefaultQuery;
import org.geotools.data.FeatureReader;
import org.geotools.data.Transaction;
import org.opengis.feature.simple.SimpleFeature;
import org.opengis.feature.simple.SimpleFeatureType;

/**
 * 
 *
 * @source $URL$
 */
public abstract class JDBCBooleanOnlineTest extends JDBCTestSupport {

    @Override
    protected abstract JDBCBooleanTestSetup createTestSetup();

    public void testGetSchema() throws Exception {
        SimpleFeatureType ft = dataStore.getSchema( tname("b") );
        assertEquals( Boolean.class, ft.getDescriptor("boolProperty").getType().getBinding() );
    }
    
    public void testGetFeatures() throws Exception {
        FeatureReader r = dataStore.getFeatureReader( new DefaultQuery( tname("b") ), Transaction.AUTO_COMMIT );
        r.hasNext();
        
        SimpleFeature f = (SimpleFeature) r.next();
        assertEquals( Boolean.FALSE, f.getAttribute( "boolProperty" ) );
        
        r.hasNext();
        f = (SimpleFeature) r.next();
        assertEquals( Boolean.TRUE, f.getAttribute( "boolProperty" ) );
        
        r.close();
       
    }
}

@@ -1480,33 +1480,42 @@
 Next();%0A        
-%0A
+try %7B%0A    
         SimpleFe
@@ -1550,32 +1550,36 @@
 next();%0A        
+   
+ 
 assertEquals( Bo
@@ -1627,33 +1627,41 @@
 y%22 ) );%0A        
-%0A
+    %0A    
         r.hasNex
@@ -1673,16 +1673,20 @@
         
+  
+  
 f = (Sim
@@ -1699,32 +1699,36 @@
 ture) r.next();%0A
+    
         assertEq
@@ -1783,33 +1783,47 @@
 y%22 ) );%0A        
-%0A
+%7Dfinally %7B%0A    
         r.close(
@@ -1828,21 +1828,23 @@
 e();%0A       
+ %7D
 %0A    %7D%0A%7D%0A

make sure reader is closed (even if test fails)