You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ibatis.apache.org by cb...@apache.org on 2009/03/21 08:29:05 UTC
svn commit: r756886 - in /ibatis/trunk/java/ibatis-3: ./
ibatis-3-core/src/main/java/org/apache/ibatis/datasource/pooled/
ibatis-3-core/src/main/java/org/apache/ibatis/datasource/unpooled/
ibatis-3-core/src/test/java/org/apache/ibatis/exceptions/
Author: cbegin
Date: Sat Mar 21 07:29:05 2009
New Revision: 756886
URL: http://svn.apache.org/viewvc?rev=756886&view=rev
Log:
Added tests for all exception constructors
Eliminated duplicate Exception
Added:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/exceptions/
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/exceptions/GeneralExceptionsTest.java
Removed:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/datasource/unpooled/DataSourceException.java
Modified:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/datasource/pooled/PooledConnection.java
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/datasource/unpooled/UnpooledDataSource.java
ibatis/trunk/java/ibatis-3/version.properties
Modified: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/datasource/pooled/PooledConnection.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/datasource/pooled/PooledConnection.java?rev=756886&r1=756885&r2=756886&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/datasource/pooled/PooledConnection.java (original)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/datasource/pooled/PooledConnection.java Sat Mar 21 07:29:05 2009
@@ -1,6 +1,6 @@
package org.apache.ibatis.datasource.pooled;
-import org.apache.ibatis.datasource.unpooled.DataSourceException;
+import org.apache.ibatis.datasource.DataSourceException;
import org.apache.ibatis.reflection.ExceptionUtil;
import java.lang.reflect.InvocationHandler;
Modified: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/datasource/unpooled/UnpooledDataSource.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/datasource/unpooled/UnpooledDataSource.java?rev=756886&r1=756885&r2=756886&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/datasource/unpooled/UnpooledDataSource.java (original)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/datasource/unpooled/UnpooledDataSource.java Sat Mar 21 07:29:05 2009
@@ -1,5 +1,7 @@
package org.apache.ibatis.datasource.unpooled;
+import org.apache.ibatis.datasource.DataSourceException;
+
import javax.sql.DataSource;
import java.io.PrintWriter;
import java.sql.*;
Added: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/exceptions/GeneralExceptionsTest.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/exceptions/GeneralExceptionsTest.java?rev=756886&view=auto
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/exceptions/GeneralExceptionsTest.java (added)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/exceptions/GeneralExceptionsTest.java Sat Mar 21 07:29:05 2009
@@ -0,0 +1,80 @@
+package org.apache.ibatis.exceptions;
+
+import org.junit.Test;
+import static org.junit.Assert.*;
+import org.apache.ibatis.binding.BindingException;
+import org.apache.ibatis.executor.BatchExecutorException;
+import org.apache.ibatis.executor.ExecutorException;
+import org.apache.ibatis.cache.CacheException;
+import org.apache.ibatis.datasource.DataSourceException;
+import org.apache.ibatis.logging.LogException;
+import org.apache.ibatis.migration.MigrationException;
+import org.apache.ibatis.xml.NodeletException;
+import org.apache.ibatis.parser.ParserException;
+import org.apache.ibatis.session.SessionException;
+import org.apache.ibatis.plugin.PluginException;
+import org.apache.ibatis.reflection.ReflectionException;
+import org.apache.ibatis.mapping.SqlMapperException;
+import org.apache.ibatis.transaction.TransactionException;
+import org.apache.ibatis.type.TypeException;
+
+import java.lang.reflect.InvocationTargetException;
+
+public class GeneralExceptionsTest {
+
+ private static final String EXPECTED_MESSAGE = "Test Message";
+ private static final Exception EXPECTED_CAUSE = new Exception("Nested Exception");
+
+ @Test
+ public void should() {
+ RuntimeException thrown = ExceptionFactory.wrapException(EXPECTED_MESSAGE, EXPECTED_CAUSE);
+ assertTrue("Exception should be wrapped in RuntimeSqlException.", thrown instanceof RuntimeSqlException);
+ testThrowException(thrown);
+ }
+
+ @Test
+ public void shouldInstantiateAndThrowAllCustomExceptions() throws Exception {
+ Class[] exceptionTypes = {
+ BindingException.class,
+ CacheException.class,
+ DataSourceException.class,
+ ExecutorException.class,
+ LogException.class,
+ MigrationException.class,
+ NodeletException.class,
+ ParserException.class,
+ PluginException.class,
+ ReflectionException.class,
+ RuntimeSqlException.class,
+ SessionException.class,
+ SqlMapperException.class,
+ TransactionException.class,
+ TypeException.class
+ };
+ for (Class exceptionType : exceptionTypes) {
+ testExceptionConstructors(exceptionType);
+ }
+
+ }
+
+ private void testExceptionConstructors(Class exceptionType) throws InstantiationException, IllegalAccessException, InvocationTargetException, NoSuchMethodException {
+ Exception e = (Exception)exceptionType.newInstance();
+ testThrowException(e);
+ e = (Exception)exceptionType.getConstructor(String.class).newInstance(EXPECTED_MESSAGE);
+ testThrowException(e);
+ e = (Exception)exceptionType.getConstructor(String.class, Throwable.class).newInstance(EXPECTED_MESSAGE, EXPECTED_CAUSE);
+ testThrowException(e);
+ e = (Exception)exceptionType.getConstructor(Throwable.class).newInstance(EXPECTED_CAUSE);
+ testThrowException(e);
+ }
+
+ private void testThrowException(Exception thrown) {
+ try {
+ throw thrown;
+ } catch (Exception caught) {
+ assertEquals(thrown.getMessage(), caught.getMessage());
+ assertEquals(thrown.getCause(), caught.getCause());
+ }
+ }
+
+}
Modified: ibatis/trunk/java/ibatis-3/version.properties
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/version.properties?rev=756886&r1=756885&r2=756886&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/version.properties (original)
+++ ibatis/trunk/java/ibatis-3/version.properties Sat Mar 21 07:29:05 2009
@@ -1,5 +1,5 @@
#Build version info
-#Wed Feb 25 23:32:13 MST 2009
+#Sat Mar 21 01:24:14 MDT 2009
version=3.0.0
-buildDate=2009/02/25 23\:32
-buildNum=134
+buildDate=2009/03/21 01\:24
+buildNum=138