[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