gvsig-projects-pool / org.gvsig.vcsgis / trunk / org.gvsig.vcsgis / org.gvsig.vcsgis.lib / org.gvsig.vcsgis.lib.impl / src / test / java / org / gvsig / vcsgis / lib / impl / Test06AddCommit.java @ 2823
History | View | Annotate | Download (3.65 KB)
1 | 2381 | jjdelcerro | package org.gvsig.vcsgis.lib.impl; |
---|---|---|---|
2 | 2268 | jjdelcerro | |
3 | import java.io.File; |
||
4 | import junit.framework.TestCase; |
||
5 | import static junit.framework.TestCase.assertEquals; |
||
6 | import org.apache.commons.io.FileUtils; |
||
7 | import org.gvsig.fmap.dal.feature.FeatureStore; |
||
8 | import org.gvsig.fmap.dal.store.jdbc2.JDBCServerExplorer; |
||
9 | 2631 | fdiaz | import org.gvsig.tools.dispose.DisposeUtils; |
10 | 2268 | jjdelcerro | import org.gvsig.tools.library.impl.DefaultLibrariesInitializer; |
11 | 2741 | fdiaz | import org.gvsig.vcsgis.lib.VCSGisLocator; |
12 | import org.gvsig.vcsgis.lib.VCSGisManager; |
||
13 | 2631 | fdiaz | import org.gvsig.vcsgis.lib.repository.VCSGisRepository; |
14 | 2699 | jjdelcerro | import org.gvsig.vcsgis.lib.repository.localdb.VCSGisRepositoryLocaldb; |
15 | import org.gvsig.vcsgis.lib.repository.localdb.tables.DataRepoTable; |
||
16 | 2741 | fdiaz | import org.gvsig.vcsgis.lib.workspace.VCSGisWorkspace; |
17 | import org.gvsig.vcsgis.lib.workspace.tables.WorkspaceChangesTable; |
||
18 | 2631 | fdiaz | import org.slf4j.Logger; |
19 | import org.slf4j.LoggerFactory; |
||
20 | 2268 | jjdelcerro | |
21 | 2627 | jjdelcerro | public class Test06AddCommit extends TestCase { |
22 | 2268 | jjdelcerro | |
23 | 2627 | jjdelcerro | private static final Logger LOGGER = LoggerFactory.getLogger(Test06AddCommit.class); |
24 | 2268 | jjdelcerro | |
25 | 2627 | jjdelcerro | public Test06AddCommit(String testName) { |
26 | 2268 | jjdelcerro | super(testName);
|
27 | } |
||
28 | |||
29 | @Override
|
||
30 | protected void setUp() throws Exception { |
||
31 | super.setUp();
|
||
32 | new DefaultLibrariesInitializer().fullInitialize();
|
||
33 | } |
||
34 | |||
35 | @Override
|
||
36 | protected void tearDown() throws Exception { |
||
37 | super.tearDown();
|
||
38 | } |
||
39 | |||
40 | // TODO add test methods here. The name must begin with 'test'. For example:
|
||
41 | // public void testHello() {}
|
||
42 | |||
43 | public void testAddCommit() throws Exception { |
||
44 | 2712 | jjdelcerro | final String testid = "LocaldbAddCommit"; |
45 | 2268 | jjdelcerro | |
46 | 2742 | fdiaz | VCSGisManager manager = VCSGisLocator.getVCSGisManager(); |
47 | 2712 | jjdelcerro | JDBCServerExplorer server = TestUtils.openServerExplorer("srv-"+testid);
|
48 | File wsfile = TestUtils.getFile(FileUtils.getFile("test-dbs","ws-"+testid)); |
||
49 | |||
50 | 2643 | jjdelcerro | // ---------------------------------------------------------
|
51 | // Creamos el respositorio y lo abrimos.
|
||
52 | 2742 | fdiaz | int r = manager.initRepository(server.getParameters(), null); |
53 | 2268 | jjdelcerro | assertEquals("srv-init status", 0, r); |
54 | |||
55 | 2742 | fdiaz | VCSGisRepository repo = manager.openRepository(server.getParameters()); |
56 | 2268 | jjdelcerro | TestUtils.h2sql_repository(repo); |
57 | |||
58 | 2741 | fdiaz | |
59 | 2643 | jjdelcerro | // ---------------------------------------------------------
|
60 | // Creamos un workspace y lo abrimos.
|
||
61 | 2741 | fdiaz | r = manager.initWorkspace(wsfile, repo, "Test add and commit",null); |
62 | 2268 | jjdelcerro | assertEquals("ws-init status", 0, r); |
63 | |||
64 | 2741 | fdiaz | VCSGisWorkspace ws = manager.openWorkspace(wsfile); |
65 | 2268 | jjdelcerro | TestUtils.h2sql_workspace(ws); |
66 | |||
67 | 2643 | jjdelcerro | // ---------------------------------------------------------
|
68 | 2728 | jjdelcerro | // Adicionamos al workspace la tabla de pruebas y lo commitamos
|
69 | 2268 | jjdelcerro | FeatureStore sourceStore = TestUtils.openSourceStore1(); |
70 | 2631 | fdiaz | r = ws.add("sourceStore1", sourceStore, "ID"); |
71 | 2268 | jjdelcerro | assertEquals("ws-add status", 0, r); |
72 | |||
73 | r = ws.commit(); |
||
74 | assertEquals("ws-commit status", 0, r); |
||
75 | |||
76 | 2643 | jjdelcerro | // ---------------------------------------------------------
|
77 | // Comprobamos que tras el commit la tabla de cambios esta vacia.
|
||
78 | 2701 | fdiaz | FeatureStore changesStore = ws.getFeatureStore(WorkspaceChangesTable.TABLE_NAME); |
79 | 2268 | jjdelcerro | assertEquals("Changes", 0, changesStore.size64()); |
80 | |||
81 | DisposeUtils.disposeQuietly(changesStore); |
||
82 | 2625 | fdiaz | |
83 | 2643 | jjdelcerro | // ---------------------------------------------------------
|
84 | 2728 | jjdelcerro | // Comprobamos que la tabla adicionada al espacio ed trabajo contiene
|
85 | 2643 | jjdelcerro | // los mismos registros que la original.
|
86 | 2625 | fdiaz | FeatureStore dataStore = ((VCSGisRepositoryLocaldb)repo).getFeatureStore(DataRepoTable.TABLE_NAME); |
87 | assertEquals("DataStore", sourceStore.size64(), dataStore.size64());
|
||
88 | |||
89 | sourceStore.dispose(); |
||
90 | DisposeUtils.disposeQuietly(dataStore); |
||
91 | 2268 | jjdelcerro | } |
92 | } |