[exo-jcr-commits] exo-jcr SVN: r580 - in jcr/branches/1.12.0-JBC/component/core/src: test/java/org/exoplatform/services/jcr/impl/storage/jbosscache and 1 other directory.
do-not-reply at jboss.org
do-not-reply at jboss.org
Thu Nov 12 03:31:37 EST 2009
Author: pnedonosko
Date: 2009-11-12 03:31:37 -0500 (Thu, 12 Nov 2009)
New Revision: 580
Modified:
jcr/branches/1.12.0-JBC/component/core/src/main/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JDBCCacheLoader.java
jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JDBCCacheLoaderTest.java
Log:
EXOJCR-201: test base for JDBC loader
Modified: jcr/branches/1.12.0-JBC/component/core/src/main/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JDBCCacheLoader.java
===================================================================
--- jcr/branches/1.12.0-JBC/component/core/src/main/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JDBCCacheLoader.java 2009-11-12 08:30:40 UTC (rev 579)
+++ jcr/branches/1.12.0-JBC/component/core/src/main/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JDBCCacheLoader.java 2009-11-12 08:31:37 UTC (rev 580)
@@ -37,7 +37,6 @@
import org.jboss.cache.Modification.ModificationType;
import org.jboss.cache.config.CacheLoaderConfig.IndividualCacheLoaderConfig;
import org.jboss.cache.factories.annotations.Inject;
-import org.jboss.cache.factories.annotations.NonVolatile;
import org.jboss.cache.loader.AbstractCacheLoader;
import java.util.LinkedHashMap;
Modified: jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JDBCCacheLoaderTest.java
===================================================================
--- jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JDBCCacheLoaderTest.java 2009-11-12 08:30:40 UTC (rev 579)
+++ jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JDBCCacheLoaderTest.java 2009-11-12 08:31:37 UTC (rev 580)
@@ -18,19 +18,8 @@
*/
package org.exoplatform.services.jcr.impl.storage.jbosscache;
-import java.io.Serializable;
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.SQLException;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
+import junit.framework.TestCase;
-import javax.naming.Context;
-import javax.naming.InitialContext;
-import javax.sql.DataSource;
-
import org.apache.commons.dbcp.BasicDataSourceFactory;
import org.exoplatform.services.idgenerator.impl.IDGeneratorServiceImpl;
import org.exoplatform.services.jcr.config.CacheEntry;
@@ -44,126 +33,83 @@
import org.exoplatform.services.jcr.config.ValueStorageFilterEntry;
import org.exoplatform.services.jcr.config.WorkspaceEntry;
import org.exoplatform.services.jcr.datamodel.NodeData;
-import org.exoplatform.services.jcr.impl.Constants;
import org.exoplatform.services.jcr.impl.storage.jdbc.JDBCWorkspaceDataContainer;
import org.exoplatform.services.jcr.impl.storage.value.StandaloneStoragePluginProvider;
-import org.exoplatform.services.jcr.storage.WorkspaceDataContainer;
import org.exoplatform.services.jcr.storage.WorkspaceStorageConnection;
import org.exoplatform.services.jcr.storage.value.ValueStoragePluginProvider;
import org.exoplatform.services.jcr.util.IdGenerator;
-import org.jboss.cache.CacheSPI;
-import org.jboss.cache.Fqn;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Properties;
+import javax.naming.Context;
+import javax.naming.InitialContext;
+import javax.sql.DataSource;
+
/**
* @author <a href="mailto:reshetnyak.alex at gmail.com">Alex Reshetnyak</a>
* @version $Id$
*
*/
-public class JDBCCacheLoaderTest extends JBossCacheStorageConnectionTest
+public class JDBCCacheLoaderTest extends TestCase
{
- JDBCWorkspaceDataContainer persistentContainer;
-
+
+ private JDBCWorkspaceDataContainer persistentContainer;
+
+ private JDBCCacheLoader loader;
+
/**
* {@inheritDoc}
*/
protected void setUp() throws Exception
{
- try
- {
- super.setUp();
- }
- catch (Exception e)
- {
- e.printStackTrace();
- throw e;
- }
+
+ super.setUp();
+
+ initPersistence();
+
+ loader = new JDBCCacheLoader();
+ loader.injectDependencies(persistentContainer);
}
- @Override
- protected void initJBC() throws Exception
+ protected void initPersistence() throws Exception
{
-
- // persistence container
- //WorkspaceDataContainer persistentContainer = new JDBCWorkspaceDataContainerTester();
-
// Create WorkspaceEntry
ContainerEntry containerEntry = new ContainerEntry();
List<SimpleParameterEntry> params = new ArrayList<SimpleParameterEntry>();
params.add(new SimpleParameterEntry(JDBCWorkspaceDataContainer.DB_DIALECT, "hsqldb"));
params.add(new SimpleParameterEntry(JDBCWorkspaceDataContainer.SWAPDIR_PROP, "/target/temp/swap/ws"));
containerEntry.setParameters(params);
-
+
// Initialize id generator.
new IdGenerator(new IDGeneratorServiceImpl());
-
+
// Set system property Context.INITIAL_CONTEXT_FACTORY to initial context.
System.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.exoplatform.services.naming.SimpleContextFactory");
-
+
// Create data source. Will be created new data source to new test.
String dataSourceName = "jdbcjcr_" + IdGenerator.generate();
createNewDataSource(dataSourceName);
-
- WorkspaceEntry ws = getNewWs("ws_to_jbdc_cache_loader", true, dataSourceName, "/target/temp/ws_to_jbdc_cache_loader/lalues", containerEntry);
-
+
+ WorkspaceEntry ws =
+ getNewWs("ws_to_jbdc_cache_loader", true, dataSourceName, "/target/temp/ws_to_jbdc_cache_loader/lalues",
+ containerEntry);
+
RepositoryEntry re = new RepositoryEntry();
re.addWorkspace(ws);
-
- ValueStoragePluginProvider valueStoragePluginProvider = new StandaloneStoragePluginProvider(ws);
-
- persistentContainer = new JDBCWorkspaceDataContainer(ws, re, null, valueStoragePluginProvider);
- ((CacheSPI<Serializable, Object>)cache).getComponentRegistry().registerComponent(persistentContainer,
- WorkspaceDataContainer.class);
- }
+ ValueStoragePluginProvider valueStoragePluginProvider = new StandaloneStoragePluginProvider(ws);
- @Override
- protected void initJBCConfig()
- {
- jbcConfig = "conf/standalone/test-jbosscache-config-exoloader.xml";
+ persistentContainer = new JDBCWorkspaceDataContainer(ws, re, null, valueStoragePluginProvider);
}
-
- public void testAddNodeAndGetNode() throws Exception
- {
- // prepare
- super.testAddNode();
- conn.commit();
-
- cache.stop();
- cache.start();
-
- Map<Serializable, Object> data = cache.getData(Fqn.fromString("/"+JBossCacheStorage.NODES + "/" + Constants.ROOT_UUID));
-
-
- }
- public void testAddNode() throws Exception
+ private WorkspaceEntry getNewWs(String wsName, boolean isMultiDb, String dsName, String vsPath, ContainerEntry entry)
+ throws Exception
{
- // prepare
- super.testAddNode();
- conn.commit();
-
- // tests it
- WorkspaceStorageConnection connection = persistentContainer.openConnection();
-
- NodeData nd = (NodeData) connection.getItemData("1");
- assertNotNull(nd);
- assertEquals("[]:1[]node:1", nd.getQPath().getAsString());
- }
-
- public void testDeleteNode() throws Exception {
-
- // prepare
- super.testDeleteNode();
- conn.commit();
-
- // tests it
-
- }
-
- public WorkspaceEntry getNewWs(String wsName, boolean isMultiDb, String dsName, String vsPath, ContainerEntry entry)
- throws Exception
- {
List params = new ArrayList();
@@ -176,7 +122,7 @@
if (entry.getParameterValue(JDBCWorkspaceDataContainer.DB_DIALECT) != null)
{
params.add(new SimpleParameterEntry(JDBCWorkspaceDataContainer.DB_DIALECT, entry
- .getParameterValue(JDBCWorkspaceDataContainer.DB_DIALECT)));
+ .getParameterValue(JDBCWorkspaceDataContainer.DB_DIALECT)));
}
String oldSwap = entry.getParameterValue("swap-directory");
@@ -185,8 +131,8 @@
params.add(new SimpleParameterEntry("swap-directory", newSwap));
ContainerEntry containerEntry =
- new ContainerEntry("org.exoplatform.services.jcr.impl.storage.jdbc.JDBCWorkspaceDataContainer",
- (ArrayList) params);
+ new ContainerEntry("org.exoplatform.services.jcr.impl.storage.jdbc.JDBCWorkspaceDataContainer",
+ (ArrayList)params);
containerEntry.setParameters(params);
if (vsPath != null)
@@ -198,8 +144,7 @@
vsparams.add(filterEntry);
ValueStorageEntry valueStorageEntry =
- new ValueStorageEntry("org.exoplatform.services.jcr.impl.storage.value.fs.SimpleFileValueStorage",
- vsparams);
+ new ValueStorageEntry("org.exoplatform.services.jcr.impl.storage.value.fs.SimpleFileValueStorage", vsparams);
ArrayList<SimpleParameterEntry> spe = new ArrayList<SimpleParameterEntry>();
spe.add(new SimpleParameterEntry("path", vsPath));
valueStorageEntry.setId(IdGenerator.generate());
@@ -219,10 +164,10 @@
ArrayList qParams = new ArrayList();
qParams.add(new SimpleParameterEntry("indexDir", "../temp/index/" + IdGenerator.generate()));
QueryHandlerEntry qEntry =
- new QueryHandlerEntry("org.exoplatform.services.jcr.impl.core.query.lucene.SearchIndex", qParams);
+ new QueryHandlerEntry("org.exoplatform.services.jcr.impl.core.query.lucene.SearchIndex", qParams);
WorkspaceEntry workspaceEntry =
- new WorkspaceEntry(wsName != null ? wsName : IdGenerator.generate(), "nt:unstructured");
+ new WorkspaceEntry(wsName != null ? wsName : IdGenerator.generate(), "nt:unstructured");
workspaceEntry.setContainer(containerEntry);
ArrayList cacheParams = new ArrayList();
@@ -249,8 +194,8 @@
// workspaceEntry
return workspaceEntry;
}
-
- public void createNewDataSource(String dataSourceName) throws Exception
+
+ private void createNewDataSource(String dataSourceName) throws Exception
{
Properties properties = new Properties();
@@ -269,12 +214,145 @@
new InitialContext().rebind(dataSourceName, bds);
}
-
+
private void createDatabase(DataSource ds, String dbName) throws SQLException
{
Connection connection = ds.getConnection();
PreparedStatement st = connection.prepareStatement("create database " + dbName);
st.executeQuery();
}
+
+ // ============= TESTS =============
+
+ public void testAddNode() throws Exception
+ {
+ // prepare
+
+
+ // tests
+ WorkspaceStorageConnection connection = persistentContainer.openConnection();
+
+ NodeData nd = (NodeData)connection.getItemData("1");
+ assertNotNull(nd);
+ assertEquals("[]:1[]node:1", nd.getQPath().getAsString());
+
+ //Map<Serializable, Object> data = cache.getData(Fqn.fromString("/"+JBossCacheStorage.NODES + "/" + Constants.ROOT_UUID));
+ }
+
+ public void testAddProperty() throws Exception
+ {
+ // prepare
+
+ // tests
+
+ }
+
+ public void testDeleteNode() throws Exception
+ {
+
+ // prepare
+
+ // tests it
+
+ }
+
+ public void testDeleteProperty() throws Exception
+ {
+
+ // prepare
+
+ // tests it
+
+ }
+
+ public void testUpdateNode() throws Exception
+ {
+
+ // prepare
+
+ // tests it
+
+ }
+
+ public void testUpdateProperty() throws Exception
+ {
+
+ // prepare
+
+ // tests it
+
+ }
+
+ public void testRenameNode() throws Exception
+ {
+
+ // prepare
+
+ // tests it
+
+ }
+
+ public void testGetNodeByIdentifier() throws Exception
+ {
+
+ // prepare
+
+ // tests it
+
+ }
+
+ public void testGetNodeByName() throws Exception
+ {
+
+ // prepare
+
+ // tests it
+
+ }
+
+ public void testGetPropertyByIdentifier() throws Exception
+ {
+
+ // prepare
+
+ // tests it
+
+ }
+
+ public void testGetPropertyByName() throws Exception
+ {
+
+ // prepare
+
+ // tests it
+
+ }
+
+ public void testGetChildNodes() throws Exception
+ {
+
+ // prepare
+
+ // tests it
+
+ }
+
+ public void testGetChildProperties() throws Exception
+ {
+
+ // prepare
+
+ // tests it
+
+ }
+
+ public void testGetReferences() throws Exception
+ {
+
+ // prepare
+
+ // tests it
+
+ }
+
}
-
More information about the exo-jcr-commits
mailing list