r556 - in trunk: wikitty-api/src/main/resources wikitty-jdbc-impl/src/test/java/org/nuiton/wikitty/services
Author: bpoussin Date: 2010-12-03 15:42:18 +0100 (Fri, 03 Dec 2010) New Revision: 556 Url: http://nuiton.org/repositories/revision/wikitty/556 Log: add test to store and restore with proxy and WikittyServiceStorage (JDBC) Added: trunk/wikitty-api/src/main/resources/wikitty-config-sample-standalone.properties trunk/wikitty-jdbc-impl/src/test/java/org/nuiton/wikitty/services/ProxyTest.java Added: trunk/wikitty-api/src/main/resources/wikitty-config-sample-standalone.properties =================================================================== --- trunk/wikitty-api/src/main/resources/wikitty-config-sample-standalone.properties (rev 0) +++ trunk/wikitty-api/src/main/resources/wikitty-config-sample-standalone.properties 2010-12-03 14:42:18 UTC (rev 556) @@ -0,0 +1,49 @@ +### +# #%L +# Wikitty :: api +# +# $Id$ +# $HeadURL$ +# %% +# Copyright (C) 2009 - 2010 CodeLutin, Benjamin Poussin +# %% +# This program 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, either version 3 of the +# License, or (at your option) any later version. +# +# This program 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 General Lesser Public License for more details. +# +# You should have received a copy of the GNU General Lesser Public +# License along with this program. If not, see +# <http://www.gnu.org/licenses/lgpl-3.0.html>. +# #L% +### +wikitty.storage.jdbc.queryfile=wikitty-jdbc-query.properties +wikitty.storage.jdbc.driver=org.h2.Driver +wikitty.storage.jdbc.host=jdbc:h2:file:/var/lib/wikitty/data/db +wikitty.storage.jdbc.login=sa +wikitty.storage.jdbc.password= +wikitty.storage.jdbc.xadatasource=org.h2.jdbcx.JdbcDataSource +wikitty.storage.jdbc.xadatasource.org.h2.jdbcx.JdbcDataSource.URL=${wikitty.storage.jdbc.host} +wikitty.storage.jdbc.xadatasource.org.h2.jdbcx.JdbcDataSource.user=${wikitty.storage.jdbc.login} +wikitty.storage.jdbc.xadatasource.org.h2.jdbcx.JdbcDataSource.password=${wikitty.storage.jdbc.password} +wikitty.searchengine.solr.directory.data=/var/lib/wikitty/data/solr +wikitty.searchengine.solr.directory.factory=solr.StandardDirectoryFactory +wikitty.WikittyService.components=org.nuiton.wikitty.services.WikittyServiceStorage,\ +org.nuiton.wikitty.services.WikittyServiceNotifier,\ +org.nuiton.wikitty.services.WikittyServiceCached,\ +org.nuiton.wikitty.services.WikittyServiceSecurity +wikitty.WikittyServiceStorage.components=org.nuiton.wikitty.jdbc.WikittyExtensionStorageJDBC,\ +org.nuiton.wikitty.jdbc.WikittyStorageJDBC,\ +org.nuiton.wikitty.solr.WikittySearchEngineSolr +wikitty.service.cache.listenevents=false +wikitty.service.cache.allwaysRestoreCopies=false +wikitty.service.event.propagate=false +wikitty.service.event.listen=false +wikitty.addon.export.threadnumber=1 +wikitty.addon.export.directory=/tmp/wikitty +wikitty.addon.export.publicurl=file:///tmp/wikitty Added: trunk/wikitty-jdbc-impl/src/test/java/org/nuiton/wikitty/services/ProxyTest.java =================================================================== --- trunk/wikitty-jdbc-impl/src/test/java/org/nuiton/wikitty/services/ProxyTest.java (rev 0) +++ trunk/wikitty-jdbc-impl/src/test/java/org/nuiton/wikitty/services/ProxyTest.java 2010-12-03 14:42:18 UTC (rev 556) @@ -0,0 +1,66 @@ +package org.nuiton.wikitty.services; + + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import java.util.Collections; +import org.junit.Assert; +import org.junit.Test; +import org.nuiton.wikitty.WikittyConfig; +import org.nuiton.wikitty.WikittyProxy; +import org.nuiton.wikitty.WikittyService; +import org.nuiton.wikitty.WikittyServiceFactory; +import org.nuiton.wikitty.entities.Wikitty; +import org.nuiton.wikitty.entities.WikittyLabel; +import org.nuiton.wikitty.entities.WikittyLabelImpl; +import org.nuiton.wikitty.entities.WikittyTreeNode; +import org.nuiton.wikitty.entities.WikittyTreeNodeImpl; + +/** + * + * @author poussin + * @version $Revision$ + * + * Last update: $Date$ + * by : $Author$ + */ +public class ProxyTest { + + /** to use log facility, just put in your code: log.info(\"...\"); */ + static private Log log = LogFactory.getLog(ProxyTest.class); + + @Test + public void testProxyStoreRestoreTreeNode() throws Exception { + WikittyConfig config = new WikittyConfig("wikitty-config-sample-standalone.properties"); + config.setOption(WikittyConfig.WikittyOption. + WIKITTY_STORAGE_JDBC_URL.getKey(), + "jdbc:h2:file:./target/data/db"); + config.setOption(WikittyConfig.WikittyOption. + WIKITTY_SEARCHENGINE_SOLR_DIRECTORY_DATA.getKey(), + "./target/data/solr"); + + WikittyService ws = WikittyServiceFactory.buildWikittyService(config); + +// Assert.assertEquals(WikittyServiceStorage.class, ws.getClass()); + + WikittyProxy proxy = new WikittyProxy(ws); + WikittyTreeNodeImpl node = new WikittyTreeNodeImpl(); + node.setName("NodeName"); + + Wikitty w = node.getWikitty(); + WikittyLabelImpl label = new WikittyLabelImpl(w); + label.addLabels("TheLabel"); + + proxy.store(label); + + WikittyTreeNode nodeRestored = proxy.restore(WikittyTreeNode.class, node.getWikittyId()); + + Assert.assertEquals("NodeName", nodeRestored.getName()); + + WikittyLabel labelRestored = proxy.restore(WikittyLabel.class, node.getWikittyId()); + Assert.assertEquals(Collections.singleton("TheLabel"), labelRestored.getLabels()); + + } + +}
participants (1)
-
bpoussin@users.nuiton.org