Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.compat.cdc / org.gvsig.fmap.dal / org.gvsig.fmap.dal.db / org.gvsig.fmap.dal.db.h2 / src / test / java / org / gvsig / fmap / dal / store / h2 / operations / sql / TestFetchFeatureType.java @ 44678

History | View | Annotate | Download (2.6 KB)

1
package org.gvsig.fmap.dal.store.h2.operations.sql;
2

    
3
import java.util.Collections;
4
import java.util.List;
5
import junit.framework.TestCase;
6
import org.gvsig.fmap.dal.feature.FeatureStore;
7
import org.gvsig.fmap.dal.feature.FeatureType;
8
import org.gvsig.fmap.dal.store.h2.H2SpatialHelper;
9
import org.gvsig.fmap.dal.store.h2.TestUtils;
10
import org.gvsig.fmap.dal.store.jdbc2.JDBCHelper;
11
import org.gvsig.fmap.dal.store.jdbc2.OperationsFactory;
12
import org.gvsig.fmap.dal.store.jdbc2.OperationsFactory.TableReference;
13
import org.gvsig.fmap.dal.store.jdbc2.spi.JDBCSQLBuilderBase;
14
import org.gvsig.fmap.dal.store.jdbc2.spi.operations.FetchFeatureTypeOperation;
15
import org.gvsig.tools.library.impl.DefaultLibrariesInitializer;
16
import org.slf4j.Logger;
17
import org.slf4j.LoggerFactory;
18

    
19
public class TestFetchFeatureType extends TestCase {
20

    
21
  private static final Logger LOGGER = LoggerFactory.getLogger(TestFetchFeatureType.class);
22

    
23
  public TestFetchFeatureType(String testName) {
24
    super(testName);
25
  }
26

    
27
  @Override
28
  protected void setUp() throws Exception {
29
    super.setUp();
30
    new DefaultLibrariesInitializer().fullInitialize();
31
  }
32

    
33
  @Override
34
  protected void tearDown() throws Exception {
35
    super.tearDown();
36
  }
37

    
38
  // TODO add test methods here. The name must begin with 'test'. For example:
39
  // public void testHello() {}
40
  
41
  public void testFetchFeatureType() throws Exception {
42
    JDBCHelper helper = new H2SpatialHelper();
43
    JDBCSQLBuilderBase sqlbuilder = helper.createSQLBuilder();
44
    OperationsFactory operations = helper.getOperations();
45

    
46
    List<String> expectedSQLs = TestUtils.getSQLs("fetchFeatureType.sql");
47
    
48
    FeatureStore sourceStore = TestUtils.openSourceStore1();
49

    
50
    TableReference table = operations.createTableReference(
51
            "dbtest", 
52
            sqlbuilder.default_schema(), 
53
            "test", 
54
            null
55
    );
56
    FeatureType featureType = sourceStore.getDefaultFeatureType();
57
    FetchFeatureTypeOperation fetchFeatureType = operations.createFetchFeatureType(
58
            featureType.getEditable(),
59
            table,
60
            Collections.EMPTY_LIST,
61
            null, // "Geometry" 
62
            featureType.getDefaultSRS()
63
    );
64
    
65
    
66
    String retrieveFirstRowOfTableSQL = fetchFeatureType.getSQLToRetrieveFirstRowOfTable();
67
    String retrievePrimaryKeysFromInformationSchemaSQL = fetchFeatureType.getSQLToRetrievePrimaryKeysFromInformationSchema();
68

    
69
    assertEquals("FetchFeatureType first row SQL", expectedSQLs.get(0), retrieveFirstRowOfTableSQL);
70
    assertEquals("FetchFeatureType get primery keys SQL", expectedSQLs.get(1), retrievePrimaryKeysFromInformationSchemaSQL);
71
  }
72

    
73
}