You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@oodt.apache.org by ma...@apache.org on 2015/10/30 16:52:55 UTC
oodt git commit: OODT-889 add more tests
Repository: oodt
Updated Branches:
refs/heads/master cc372588e -> 5cb04beba
OODT-889 add more tests
Project: http://git-wip-us.apache.org/repos/asf/oodt/repo
Commit: http://git-wip-us.apache.org/repos/asf/oodt/commit/5cb04beb
Tree: http://git-wip-us.apache.org/repos/asf/oodt/tree/5cb04beb
Diff: http://git-wip-us.apache.org/repos/asf/oodt/diff/5cb04beb
Branch: refs/heads/master
Commit: 5cb04beba041b7cae3fccfefcf1c6c3fb9546747
Parents: cc37258
Author: Tom Barber <to...@analytical-labs.com>
Authored: Fri Oct 30 15:52:35 2015 +0000
Committer: Tom Barber <to...@analytical-labs.com>
Committed: Fri Oct 30 15:52:35 2015 +0000
----------------------------------------------------------------------
.../database/DatabaseConnectionBuilder.java | 7 +-
core/pom.xml | 10 +++
workflow/pom.xml | 20 ------
.../DataSourceWorkflowRepository.java | 7 +-
.../TestPackagedWorkflowRepository.java | 24 +++++--
.../TestWorkflowDataSourceRepository.java | 72 +++++++++++++++-----
.../repository/TestWorkflowRepository.java | 21 +++---
7 files changed, 103 insertions(+), 58 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/oodt/blob/5cb04beb/commons/src/main/java/org/apache/oodt/commons/database/DatabaseConnectionBuilder.java
----------------------------------------------------------------------
diff --git a/commons/src/main/java/org/apache/oodt/commons/database/DatabaseConnectionBuilder.java b/commons/src/main/java/org/apache/oodt/commons/database/DatabaseConnectionBuilder.java
index fbb555a..221f2b3 100644
--- a/commons/src/main/java/org/apache/oodt/commons/database/DatabaseConnectionBuilder.java
+++ b/commons/src/main/java/org/apache/oodt/commons/database/DatabaseConnectionBuilder.java
@@ -18,8 +18,6 @@
package org.apache.oodt.commons.database;
-//JDK imports
-
import org.apache.commons.dbcp.ConnectionFactory;
import org.apache.commons.dbcp.DriverManagerConnectionFactory;
import org.apache.commons.dbcp.PoolableConnectionFactory;
@@ -28,8 +26,6 @@ import org.apache.commons.pool.impl.GenericObjectPool;
import javax.sql.DataSource;
-//APACHE imports
-
/**
* @author mattmann
* @version $Revision$
@@ -55,9 +51,8 @@ public final class DatabaseConnectionBuilder {
url, user, pass);
PoolableConnectionFactory poolableConnectionFactory = new PoolableConnectionFactory(
connectionFactory, connectionPool, null, null, false, true);
- ds = new PoolingDataSource(connectionPool);
- return ds;
+ return new PoolingDataSource(connectionPool);
}
}
http://git-wip-us.apache.org/repos/asf/oodt/blob/5cb04beb/core/pom.xml
----------------------------------------------------------------------
diff --git a/core/pom.xml b/core/pom.xml
index 025ef60..4ba2355 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -136,6 +136,11 @@ the License.
<version>1.2</version>
</dependency>
<dependency>
+ <groupId>concurrent</groupId>
+ <artifactId>concurrent</artifactId>
+ <version>1.3.4</version>
+ </dependency>
+ <dependency>
<groupId>edu.ucar</groupId>
<artifactId>netcdf</artifactId>
<version>4.2</version>
@@ -156,6 +161,11 @@ the License.
<version>5.13.0.0</version>
</dependency>
<dependency>
+ <groupId>joda-time</groupId>
+ <artifactId>joda-time</artifactId>
+ <version>2.5</version>
+ </dependency>
+ <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
http://git-wip-us.apache.org/repos/asf/oodt/blob/5cb04beb/workflow/pom.xml
----------------------------------------------------------------------
diff --git a/workflow/pom.xml b/workflow/pom.xml
index 310cace..3e31ab9 100644
--- a/workflow/pom.xml
+++ b/workflow/pom.xml
@@ -54,22 +54,18 @@ the License.
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
- <version>1.3</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
- <version>2.1</version>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
- <version>1.2.1</version>
</dependency>
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
- <version>3.0</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
@@ -78,84 +74,68 @@ the License.
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
- <version>2.4</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
- <version>1.0.3</version>
</dependency>
<dependency>
<groupId>commons-pool</groupId>
<artifactId>commons-pool</artifactId>
- <version>1.2</version>
</dependency>
<dependency>
<groupId>concurrent</groupId>
<artifactId>concurrent</artifactId>
- <version>1.3.4</version>
</dependency>
<dependency>
<groupId>hsqldb</groupId>
<artifactId>hsqldb</artifactId>
- <version>1.8.0.7</version>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
- <version>2.5</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>3.8.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.geronimo.javamail</groupId>
<artifactId>geronimo-javamail_1.4_mail</artifactId>
- <version>1.8.1</version>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-activation_1.1_spec</artifactId>
- <version>1.1</version>
</dependency>
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-core</artifactId>
- <version>2.0.0</version>
</dependency>
<dependency>
<groupId>org.apache.oodt</groupId>
<artifactId>cas-cli</artifactId>
- <version>${project.parent.version}</version>
</dependency>
<dependency>
<groupId>org.apache.oodt</groupId>
<artifactId>cas-metadata</artifactId>
- <version>${project.parent.version}</version>
</dependency>
<dependency>
<groupId>org.apache.oodt</groupId>
<artifactId>cas-resource</artifactId>
- <version>${project.parent.version}</version>
</dependency>
<dependency>
<groupId>org.apache.oodt</groupId>
<artifactId>oodt-commons</artifactId>
- <version>${project.parent.version}</version>
</dependency>
<dependency>
<groupId>org.safehaus.jug</groupId>
<artifactId>jug</artifactId>
- <version>2.0.0</version>
<classifier>asl</classifier>
</dependency>
<dependency>
<groupId>xmlrpc</groupId>
<artifactId>xmlrpc</artifactId>
- <version>2.0.1</version>
</dependency>
</dependencies>
<build>
http://git-wip-us.apache.org/repos/asf/oodt/blob/5cb04beb/workflow/src/main/java/org/apache/oodt/cas/workflow/repository/DataSourceWorkflowRepository.java
----------------------------------------------------------------------
diff --git a/workflow/src/main/java/org/apache/oodt/cas/workflow/repository/DataSourceWorkflowRepository.java b/workflow/src/main/java/org/apache/oodt/cas/workflow/repository/DataSourceWorkflowRepository.java
index a8eea51..207730f 100644
--- a/workflow/src/main/java/org/apache/oodt/cas/workflow/repository/DataSourceWorkflowRepository.java
+++ b/workflow/src/main/java/org/apache/oodt/cas/workflow/repository/DataSourceWorkflowRepository.java
@@ -80,7 +80,12 @@ public class DataSourceWorkflowRepository implements WorkflowRepository {
Workflow workflow = null;
try {
- conn = dataSource.getConnection();
+ if(dataSource!=null) {
+ conn = dataSource.getConnection();
+ }
+ else{
+ throw new RepositoryException("Null datasource");
+ }
statement = conn.createStatement();
String getWorkflowSql = "SELECT * from workflows WHERE workflow_name = '"
http://git-wip-us.apache.org/repos/asf/oodt/blob/5cb04beb/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestPackagedWorkflowRepository.java
----------------------------------------------------------------------
diff --git a/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestPackagedWorkflowRepository.java b/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestPackagedWorkflowRepository.java
index 2fc900f..fbe1768 100644
--- a/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestPackagedWorkflowRepository.java
+++ b/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestPackagedWorkflowRepository.java
@@ -18,15 +18,20 @@
package org.apache.oodt.cas.workflow.repository;
//JDK imports
+
+import org.apache.oodt.cas.workflow.structs.Workflow;
+import org.apache.oodt.cas.workflow.structs.WorkflowCondition;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
import java.io.File;
import java.util.Collections;
import java.util.List;
-import org.apache.oodt.cas.workflow.structs.Workflow;
-import org.apache.oodt.cas.workflow.structs.WorkflowCondition;
+import static org.junit.Assert.*;
-//Junit imports
-import junit.framework.TestCase;
/**
*
@@ -36,7 +41,7 @@ import junit.framework.TestCase;
* @version $Revision$
*
*/
-public class TestPackagedWorkflowRepository extends TestCase {
+public class TestPackagedWorkflowRepository {
private PackagedWorkflowRepository repo;
@@ -46,6 +51,7 @@ public class TestPackagedWorkflowRepository extends TestCase {
/**
* @since OODT-205
*/
+ @Test
public void testWorkflowConditions(){
Workflow w = null;
try{
@@ -62,6 +68,7 @@ public class TestPackagedWorkflowRepository extends TestCase {
assertEquals(w.getConditions().size(), 3);
}
+ @Test
public void testDetectOuterLevelWorkflows() {
assertNotNull(this.repo);
List<Workflow> workflows = null;
@@ -81,6 +88,7 @@ public class TestPackagedWorkflowRepository extends TestCase {
assertTrue(foundGranuleMaps);
}
+ @Test
public void testDetectInnerWorkflows() {
assertNotNull(this.repo);
List<String> events = null;
@@ -118,6 +126,7 @@ public class TestPackagedWorkflowRepository extends TestCase {
/**
* @since OODT-207
*/
+ @Test
public void testGetConditionTimeout(){
WorkflowCondition cond = null;
try{
@@ -135,6 +144,7 @@ public class TestPackagedWorkflowRepository extends TestCase {
/**
* @since OODT-208
*/
+ @Test
public void testGetOptional(){
WorkflowCondition cond = null;
try{
@@ -154,7 +164,7 @@ public class TestPackagedWorkflowRepository extends TestCase {
*
* @see junit.framework.TestCase#setUp()
*/
- @Override
+ @Before
protected void setUp() throws Exception {
repo = new PackagedWorkflowRepository(Collections.singletonList(new File(
"src/main/resources/examples/wengine/GranuleMaps.xml")));
@@ -165,7 +175,7 @@ public class TestPackagedWorkflowRepository extends TestCase {
*
* @see junit.framework.TestCase#tearDown()
*/
- @Override
+ @After
protected void tearDown() throws Exception {
repo = null;
}
http://git-wip-us.apache.org/repos/asf/oodt/blob/5cb04beb/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestWorkflowDataSourceRepository.java
----------------------------------------------------------------------
diff --git a/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestWorkflowDataSourceRepository.java b/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestWorkflowDataSourceRepository.java
index 368baee..f813188 100644
--- a/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestWorkflowDataSourceRepository.java
+++ b/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestWorkflowDataSourceRepository.java
@@ -18,25 +18,30 @@
package org.apache.oodt.cas.workflow.repository;
-//JDK imports
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.sql.SQLException;
-import javax.sql.DataSource;
-//OODT imports
-import org.apache.oodt.commons.database.DatabaseConnectionBuilder;
-import org.apache.oodt.commons.database.SqlScript;
import org.apache.oodt.cas.metadata.Metadata;
import org.apache.oodt.cas.workflow.structs.Workflow;
import org.apache.oodt.cas.workflow.structs.WorkflowCondition;
import org.apache.oodt.cas.workflow.structs.WorkflowConditionInstance;
import org.apache.oodt.cas.workflow.structs.exceptions.RepositoryException;
import org.apache.oodt.cas.workflow.util.GenericWorkflowObjectFactory;
+import org.apache.oodt.commons.database.DatabaseConnectionBuilder;
+import org.apache.oodt.commons.database.SqlScript;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.sql.SQLException;
+
+import javax.sql.DataSource;
+
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.junit.Assert.*;
-//Junit imports
-import junit.framework.TestCase;
/**
* @author mattmann
@@ -47,7 +52,8 @@ import junit.framework.TestCase;
* {@link DataSourceCatalogFactory}.
* </p>.
*/
-public class TestWorkflowDataSourceRepository extends TestCase {
+
+public class TestWorkflowDataSourceRepository {
private String tmpDirPath = null;
@@ -86,7 +92,8 @@ public class TestWorkflowDataSourceRepository extends TestCase {
*
* @see junit.framework.TestCase#setUp()
*/
- protected void setUp() throws Exception {
+ @Before
+ public void setUp() throws Exception {
ds = DatabaseConnectionBuilder.buildDataSource("sa", "", "org.hsqldb.jdbcDriver", "jdbc:hsqldb:file:" + tmpDirPath + "/testCat;shutdown=true");
SqlScript coreSchemaScript = new SqlScript("src/test/resources/workflow.sql", ds);
coreSchemaScript.loadScript();
@@ -99,13 +106,15 @@ public class TestWorkflowDataSourceRepository extends TestCase {
*
* @see junit.framework.TestCase#tearDown()
*/
- protected void tearDown() throws Exception {
+ @After
+ public void tearDown() throws Exception {
ds.getConnection().close();
}
/**
* @since OODT-205
*/
+ @Test
public void testWorkflowConditions(){
DataSourceWorkflowRepository repo = new DataSourceWorkflowRepository(ds);
@@ -122,8 +131,9 @@ public class TestWorkflowDataSourceRepository extends TestCase {
assertTrue(w.getConditions().size() > 0);
assertEquals(w.getConditions().size(), 1);
}
-
-
+
+
+ @Test
public void testDataSourceRepo() throws SQLException, RepositoryException {
DataSourceWorkflowRepository repo = new DataSourceWorkflowRepository(ds);
@@ -149,6 +159,36 @@ public class TestWorkflowDataSourceRepository extends TestCase {
condInst = GenericWorkflowObjectFactory.getConditionObjectFromClassName(wc.getConditionInstanceClassName());
assertTrue(condInst.evaluate(m, wc.getTaskConfig()));
}
+
+ @Test
+ public void testGetworkflowByName() throws RepositoryException {
+ DataSourceWorkflowRepository repo = new DataSourceWorkflowRepository(ds);
+
+ Workflow w = repo.getWorkflowByName("Test Workflow");
+
+ assertNotNull(w);
+
+ assertThat("Test Workflow", equalTo(w.getName()));
+
+
+ }
+
+ @Test
+ public void testGetWorkflowByNameIncorrect() throws RepositoryException{
+ DataSourceWorkflowRepository repo = new DataSourceWorkflowRepository(ds);
+
+ Workflow w = repo.getWorkflowByName("Broken Workflow");
+
+ assertNull(w);
+ }
+
+ @Test(expected=RepositoryException.class)
+ public void testGetWorkflowByNameNoDataSource() throws RepositoryException {
+ DataSourceWorkflowRepository repo = new DataSourceWorkflowRepository(null);
+
+ repo.getWorkflowByName("Broken Workflow");
+
+ }
}
http://git-wip-us.apache.org/repos/asf/oodt/blob/5cb04beb/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestWorkflowRepository.java
----------------------------------------------------------------------
diff --git a/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestWorkflowRepository.java b/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestWorkflowRepository.java
index 6edd9e8..507d20e 100644
--- a/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestWorkflowRepository.java
+++ b/workflow/src/test/java/org/apache/oodt/cas/workflow/repository/TestWorkflowRepository.java
@@ -18,23 +18,27 @@
package org.apache.oodt.cas.workflow.repository;
-//Junit imports
-import junit.framework.TestCase;
//JDK imports
-import java.io.File;
-import java.util.List;
-import java.util.Vector;
-//OODT imports
import org.apache.oodt.cas.metadata.Metadata;
import org.apache.oodt.cas.workflow.structs.Workflow;
-import org.apache.oodt.cas.workflow.structs.WorkflowTask;
import org.apache.oodt.cas.workflow.structs.WorkflowCondition;
+import org.apache.oodt.cas.workflow.structs.WorkflowTask;
import org.apache.oodt.cas.workflow.structs.WorkflowTaskConfiguration;
import org.apache.oodt.cas.workflow.structs.exceptions.RepositoryException;
import org.apache.oodt.cas.workflow.util.GenericWorkflowObjectFactory;
+import org.junit.Test;
+
+import java.io.File;
+import java.util.List;
+import java.util.Vector;
+
+import static org.junit.Assert.*;
+import static org.junit.Assert.fail;
+
+
/**
* @author mattmann
* @version $Revision$
@@ -44,7 +48,7 @@ import org.apache.oodt.cas.workflow.util.GenericWorkflowObjectFactory;
* </p>
*
*/
-public class TestWorkflowRepository extends TestCase {
+public class TestWorkflowRepository {
private XMLWorkflowRepository workflowRepository = null;
@@ -64,6 +68,7 @@ public class TestWorkflowRepository extends TestCase {
/**
* @since OODT-205
*/
+ @Test
public void testWorkflowConditions(){
Workflow w = null;
try{