Repository: oodt Updated Branches: refs/heads/master 5cb04beba -> 88af1927a
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/88af1927 Tree: http://git-wip-us.apache.org/repos/asf/oodt/tree/88af1927 Diff: http://git-wip-us.apache.org/repos/asf/oodt/diff/88af1927 Branch: refs/heads/master Commit: 88af1927a690cd3df5021d24a9d51ea377b6866b Parents: 5cb04be Author: Tom Barber <[email protected]> Authored: Fri Oct 30 16:29:41 2015 +0000 Committer: Tom Barber <[email protected]> Committed: Fri Oct 30 16:29:41 2015 +0000 ---------------------------------------------------------------------- workflow/pom.xml | 5 +++ .../DataSourceWorkflowRepository.java | 9 +++- .../TestWorkflowDataSourceRepository.java | 46 +++++++++++++++++++- 3 files changed, 57 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/oodt/blob/88af1927/workflow/pom.xml ---------------------------------------------------------------------- diff --git a/workflow/pom.xml b/workflow/pom.xml index 3e31ab9..84a0272 100644 --- a/workflow/pom.xml +++ b/workflow/pom.xml @@ -101,6 +101,11 @@ the License. <scope>test</scope> </dependency> <dependency> + <groupId>org.hamcrest</groupId> + <artifactId>hamcrest-all</artifactId> + <scope>test</scope> + </dependency> + <dependency> <groupId>org.apache.geronimo.javamail</groupId> <artifactId>geronimo-javamail_1.4_mail</artifactId> </dependency> http://git-wip-us.apache.org/repos/asf/oodt/blob/88af1927/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 207730f..bf03d91 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 @@ -173,8 +173,13 @@ public class DataSourceWorkflowRepository implements WorkflowRepository { Workflow workflow = null; try { - conn = dataSource.getConnection(); - statement = conn.createStatement(); + + if(dataSource!=null) { + conn = dataSource.getConnection(); + } + else{ + throw new RepositoryException("Null datasource"); + } statement = conn.createStatement(); String getWorkflowSql = "SELECT * from workflows WHERE workflow_id = '" + workflowId + "'"; http://git-wip-us.apache.org/repos/asf/oodt/blob/88af1927/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 f813188..bf890a6 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 @@ -36,10 +36,14 @@ import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.sql.SQLException; +import java.util.List; import javax.sql.DataSource; -import static org.hamcrest.CoreMatchers.equalTo; +import static org.hamcrest.Matchers.*; + + +import static org.hamcrest.Matchers.hasSize; import static org.junit.Assert.*; @@ -161,6 +165,28 @@ public class TestWorkflowDataSourceRepository { } @Test + public void testGetworkflowByIncorredId() throws RepositoryException { + DataSourceWorkflowRepository repo = new DataSourceWorkflowRepository(ds); + + Workflow w = repo.getWorkflowById("100"); + + assertNull(w); + + + } + + @Test(expected=RepositoryException.class) + public void testGetworkflowByIdNoDataSource() throws RepositoryException { + DataSourceWorkflowRepository repo = new DataSourceWorkflowRepository(null); + + Workflow w = repo.getWorkflowById("1"); + + assertNull(w); + + + } + + @Test public void testGetworkflowByName() throws RepositoryException { DataSourceWorkflowRepository repo = new DataSourceWorkflowRepository(ds); @@ -189,6 +215,24 @@ public class TestWorkflowDataSourceRepository { repo.getWorkflowByName("Broken Workflow"); } + + @Test(expected=RepositoryException.class) + public void testGetWorkflowsNullRepository() throws RepositoryException { + DataSourceWorkflowRepository repo = new DataSourceWorkflowRepository(null); + List flows = repo.getWorkflows(); + + assertNotNull(flows); + + } + + @Test + public void testGetWorkflows() throws RepositoryException { + DataSourceWorkflowRepository repo = new DataSourceWorkflowRepository(ds); + List<Workflow> flows = repo.getWorkflows(); + + assertThat(flows, allOf(notNullValue(), hasSize(1))); + + } }
