Revision 2710

View differences:

org.gvsig.vcsgis/trunk/org.gvsig.vcsgis/org.gvsig.vcsgis.lib/org.gvsig.vcsgis.lib.impl/src/test/java/org/gvsig/vcsgis/lib/impl/server/TestS02Commit.java
52 52
    // TODO add test methods here. The name must begin with 'test'. For example:
53 53
    // public void testHello() {}
54 54

  
55
    public void testCheckout() throws Exception {
56
//        final String testid = "ServerCommit";
57
//        final URL serverUrl = new URL("http://localhost:9810/");
58
//        
59
//        VCSGisManager manager = VCSGisLocator.getVCSGisManager();
60
//        JDBCServerExplorer server = TestUtils.openServerExplorer("srv-"+testid);
61
//        File ws1file = TestUtils.getFile(FileUtils.getFile("test-dbs","ws-"+testid)); 
62
//        
63
//        int r = manager.initRepository(server, null);
64
//        assertEquals("initRepository status", ERR_NO_ERROR, r);
65
//        
66
//        VCSGisRepository repo = manager.openRepository(server);
67
//        TestUtils.h2sql_repository(repo);
68
//
69
//        // -------------------------
70
//        // Prepare the data in workspace
71
//        r = manager.initWorkspace(ws1file, repo, "Test "+testid, null);
72
//        assertEquals("initWorkspace status", ERR_NO_ERROR, r);
73
//        
74
//        VCSGisWorkspace ws1 = manager.openWorkspace(ws1file);
75
//        assertNotNull("openWorkspace status", ws1);
76
//        TestUtils.h2sql_workspace(ws1);
77
//
78
//        FeatureStore store2 = TestUtils.openSourceStore2();
79
//        ws1.add("test", store2, "text");
80
//        assertEquals("ws1.add status", ERR_NO_ERROR, r);
81
//
82
//        DisposeUtils.disposeQuietly(store2);
83
//        
84
//        Map<String, String> expected = TestUtils.getExpecteds("S02Commit.txt");
85
//
86
//        VCSGisRepository client = manager.openRepository(serverUrl);
87
//        CommitRequestClient request = (CommitRequestClient) client.createCommitRequest();
88
//        ((VCSGisWorkspaceImpl)ws1).prepareCommitRequest(request, null, null, null);
89
//        
90
//        ByteArrayOutputStream request_stream = new ByteArrayOutputStream(1024);
91
//        LOGGER.debug("===: "+testid+"/produce request");
92
//        request.requestDataProducer(request_stream);
93
//        LOGGER.debug("===: "+testid+"/request built");
94
//        String request_s = request_stream.toString().trim();
95
//        assertTrue("request data", match(expected.get("request"), request_s));
96
//        
97
//        ByteArrayInputStream is = new ByteArrayInputStream(request_stream.toByteArray());
98
//        LOGGER.debug("===: "+testid+"/handle request");
99
//        CommitHandler handler = new CommitHandler(repo);
100
//        InputStream response_stream = handler.handle(is);
101
//                
102
//        LOGGER.debug("===: "+testid+"/Transform response to string");
103
//        String response_s = StringUtils.join(IOUtils.readLines(response_stream),'\n').trim();
104
//        assertTrue("response data", match(expected.get("response"), response_s));
105
//        
55
    public void testCommit() throws Exception {
56
        final String testid = "ServerCommit";
57
        final URL serverUrl = new URL("http://localhost:9810/");
106 58
        
59
        VCSGisManager manager = VCSGisLocator.getVCSGisManager();
60
        JDBCServerExplorer server = TestUtils.openServerExplorer("srv-"+testid);
61
        File ws1file = TestUtils.getFile(FileUtils.getFile("test-dbs","ws-"+testid)); 
62
        
63
        int r = manager.initRepository(server, null);
64
        assertEquals("initRepository status", ERR_NO_ERROR, r);
65
        
66
        VCSGisRepository repo = manager.openRepository(server);
67
        TestUtils.h2sql_repository(repo);
68

  
69
        // -------------------------
70
        // Prepare the data in workspace
71
        r = manager.initWorkspace(ws1file, repo, "Test "+testid, null);
72
        assertEquals("initWorkspace status", ERR_NO_ERROR, r);
73
        
74
        VCSGisWorkspace ws1 = manager.openWorkspace(ws1file);
75
        assertNotNull("openWorkspace status", ws1);
76
        TestUtils.h2sql_workspace(ws1);
77

  
78
        FeatureStore store2 = TestUtils.openSourceStore2();
79
        ws1.add("test", store2, "text");
80
        assertEquals("ws1.add status", ERR_NO_ERROR, r);
81

  
82
        DisposeUtils.disposeQuietly(store2);
83
        
84
        Map<String, String> expected = TestUtils.getExpecteds("S02Commit.txt");
85

  
86
        VCSGisRepository client = manager.openRepository(serverUrl);
87
        CommitRequestClient request = (CommitRequestClient) client.createCommitRequest();
88
        ((VCSGisWorkspaceImpl)ws1).prepareCommitRequest(request, null, null, null);
89
        
90
        ByteArrayOutputStream request_stream = new ByteArrayOutputStream(1024);
91
        LOGGER.debug("===: "+testid+"/produce request");
92
        request.requestDataProducer(request_stream);
93
        LOGGER.debug("===: "+testid+"/request built");
94
        String request_s = request_stream.toString().trim();
95
        assertTrue("request data", match(expected.get("request"), request_s));
96
        
97
        ByteArrayInputStream is = new ByteArrayInputStream(request_stream.toByteArray());
98
        LOGGER.debug("===: "+testid+"/handle request");
99
        CommitHandler handler = new CommitHandler(repo);
100
        InputStream response_stream = handler.handle(is);
101
                
102
        LOGGER.debug("===: "+testid+"/Transform response to string");
103
        String response_s = StringUtils.join(IOUtils.readLines(response_stream),'\n').trim();
104
        assertTrue("response data", match(expected.get("response"), response_s));
105
        
106
        
107 107
    }
108 108
}
org.gvsig.vcsgis/trunk/org.gvsig.vcsgis/org.gvsig.vcsgis.lib/org.gvsig.vcsgis.lib.impl/src/test/java/org/gvsig/vcsgis/lib/impl/server/TestS03Checkout.java
1
package org.gvsig.vcsgis.lib.impl.server;
2

  
3
import java.io.ByteArrayInputStream;
4
import java.io.ByteArrayOutputStream;
5
import java.io.File;
6
import java.io.InputStream;
7
import java.net.URL;
8
import java.util.Map;
9
import junit.framework.TestCase;
10
import static junit.framework.TestCase.assertEquals;
11
import org.apache.commons.io.FileUtils;
12
import org.apache.commons.io.FilenameUtils;
13
import org.apache.commons.io.IOUtils;
14
import org.apache.commons.lang3.StringUtils;
15
import org.gvsig.fmap.dal.feature.FeatureStore;
16
import org.gvsig.fmap.dal.store.jdbc2.JDBCServerExplorer;
17
import org.gvsig.tools.dispose.DisposeUtils;
18
import org.gvsig.tools.library.impl.DefaultLibrariesInitializer;
19
import org.gvsig.vcsgis.lib.VCSGisLocator;
20
import org.gvsig.vcsgis.lib.VCSGisManager;
21
import static org.gvsig.vcsgis.lib.VCSGisManager.ERR_NO_ERROR;
22
import org.gvsig.vcsgis.lib.impl.TestUtils;
23
import org.gvsig.vcsgis.lib.repository.VCSGisRepository;
24
import org.gvsig.vcsgis.lib.repository.remoteclient.requests.CommitRequestClient;
25
import org.gvsig.vcsgis.lib.server.handlers.CommitHandler;
26
import org.gvsig.vcsgis.lib.workspace.VCSGisWorkspace;
27
import org.gvsig.vcsgis.lib.workspace.VCSGisWorkspaceImpl;
28
import org.slf4j.Logger;
29
import org.slf4j.LoggerFactory;
30
import static org.gvsig.vcsgis.lib.impl.TestUtils.match;
31

  
32

  
33
public class TestS03Checkout extends TestCase {
34

  
35
    private static final Logger LOGGER = LoggerFactory.getLogger(TestS03Checkout.class);
36

  
37
    public TestS03Checkout(String testName) {
38
        super(testName);
39
    }
40

  
41
    @Override
42
    protected void setUp() throws Exception {
43
        super.setUp();
44
        new DefaultLibrariesInitializer().fullInitialize();
45
    }
46

  
47
    @Override
48
    protected void tearDown() throws Exception {
49
        super.tearDown();
50
    }
51

  
52
    // TODO add test methods here. The name must begin with 'test'. For example:
53
    // public void testHello() {}
54

  
55
    public void testCheckout() throws Exception {
56
        
57
    }
58
}

Also available in: Unified diff