Encapsulate test fields (#222)

* Removing Deficient Encapsulation using Encapsulate Field technique

* Fixed more design issues

* Refactored visibility modifier of BaseTestCase
diff --git a/src/test/java/org/apache/commons/dbutils/AsyncQueryRunnerTest.java b/src/test/java/org/apache/commons/dbutils/AsyncQueryRunnerTest.java
index 827e91c..acc317e 100644
--- a/src/test/java/org/apache/commons/dbutils/AsyncQueryRunnerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/AsyncQueryRunnerTest.java
@@ -47,21 +47,21 @@
 @SuppressWarnings("boxing") // test code
 @RunWith(MockitoJUnitRunner.class)
 public class AsyncQueryRunnerTest {
-    AsyncQueryRunner runner;
-    ArrayHandler handler;
+    private AsyncQueryRunner runner;
+    private ArrayHandler handler;
 
     @Mock
-    DataSource dataSource;
+    private DataSource dataSource;
     @Mock
-    Connection conn;
+    private Connection conn;
     @Mock
-    PreparedStatement prepStmt;
+    private PreparedStatement prepStmt;
     @Mock
-    Statement stmt;
+    private Statement stmt;
     @Mock
-    ParameterMetaData meta;
+    private ParameterMetaData meta;
     @Mock
-    ResultSet results;
+    private ResultSet results;
 
     // helper method for calling batch when an exception is expected
     private void callBatchWithException(final String sql, final Object[][] params) throws Exception {
diff --git a/src/test/java/org/apache/commons/dbutils/BaseTestCase.java b/src/test/java/org/apache/commons/dbutils/BaseTestCase.java
index 0157cc1..e1ce7ed 100644
--- a/src/test/java/org/apache/commons/dbutils/BaseTestCase.java
+++ b/src/test/java/org/apache/commons/dbutils/BaseTestCase.java
@@ -65,12 +65,12 @@
     /**

      * The ResultSet all test methods will use.

      */

-    protected ResultSet rs;

+    private ResultSet rs;

 

     /**

      * A ResultSet with 0 rows.

      */

-    protected ResultSet emptyResultSet;

+    private ResultSet emptyResultSet;

 

     /**

      * Creates a freshly initialized ResultSet.

@@ -92,6 +92,18 @@
         emptyResultSet = MockResultSet.create(metaData, null);

     }

 

+    public ResultSet getResultSet() {

+        return this.rs;

+    }

+

+    public ResultSet getEmptyResultSet() {

+        return this.emptyResultSet;

+    }

+

+    public void setResultSet(ResultSet resultSet) {

+        this.rs = resultSet;

+    }

+

     // Test which allows Eclipse to be run on full project (avoids no tests found)

     // check that the rows are valid for the column definition

     public void testCheckDataSizes() {

diff --git a/src/test/java/org/apache/commons/dbutils/BasicRowProcessorTest.java b/src/test/java/org/apache/commons/dbutils/BasicRowProcessorTest.java
index d95924e..f62b9c8 100644
--- a/src/test/java/org/apache/commons/dbutils/BasicRowProcessorTest.java
+++ b/src/test/java/org/apache/commons/dbutils/BasicRowProcessorTest.java
@@ -57,35 +57,35 @@
     public void testToArray() throws SQLException {
 
         Object[] a;
-        assertTrue(this.rs.next());
-        a = processor.toArray(this.rs);
+        assertTrue(this.getResultSet().next());
+        a = processor.toArray(this.getResultSet());
         assertEquals(COLS, a.length);
         assertEquals("1", a[0]);
         assertEquals("2", a[1]);
         assertEquals("THREE", a[2]);
 
-        assertTrue(this.rs.next());
-        a = processor.toArray(this.rs);
+        assertTrue(this.getResultSet().next());
+        a = processor.toArray(this.getResultSet());
         assertEquals(COLS, a.length);
 
         assertEquals("4", a[0]);
         assertEquals("5", a[1]);
         assertEquals("SIX", a[2]);
 
-        assertFalse(this.rs.next());
+        assertFalse(this.getResultSet().next());
     }
 
     public void testToBean() throws SQLException, ParseException {
 
-        assertTrue(this.rs.next());
-        TestBean row = processor.toBean(this.rs, TestBean.class);
+        assertTrue(this.getResultSet().next());
+        TestBean row = processor.toBean(this.getResultSet(), TestBean.class);
         assertEquals("1", row.getOne());
         assertEquals("2", row.getTwo());
         assertEquals(TestBean.Ordinal.THREE, row.getThree());
         assertEquals("not set", row.getDoNotSet());
 
-        assertTrue(this.rs.next());
-        row = processor.toBean(this.rs, TestBean.class);
+        assertTrue(this.getResultSet().next());
+        row = processor.toBean(this.getResultSet(), TestBean.class);
 
         assertEquals("4", row.getOne());
         assertEquals("5", row.getTwo());
@@ -100,13 +100,13 @@
         assertTrue(!"not a date".equals(row.getNotDate()));
         assertTrue(row.getNotDate().endsWith("789456123"));
 
-        assertFalse(this.rs.next());
+        assertFalse(this.getResultSet().next());
 
     }
 
     public void testToBeanList() throws SQLException, ParseException {
 
-        final List<TestBean> list = processor.toBeanList(this.rs, TestBean.class);
+        final List<TestBean> list = processor.toBeanList(this.getResultSet(), TestBean.class);
         assertNotNull(list);
         assertEquals(ROWS, list.size());
 
@@ -134,28 +134,28 @@
 
     public void testToMap() throws SQLException {
 
-        assertTrue(this.rs.next());
-        Map<String, Object> m = processor.toMap(this.rs);
+        assertTrue(this.getResultSet().next());
+        Map<String, Object> m = processor.toMap(this.getResultSet());
         assertEquals(COLS, m.size());
         assertEquals("1", m.get("one"));
         assertEquals("2", m.get("TWO"));
         assertEquals("THREE", m.get("Three"));
 
-        assertTrue(this.rs.next());
-        m = processor.toMap(this.rs);
+        assertTrue(this.getResultSet().next());
+        m = processor.toMap(this.getResultSet());
         assertEquals(COLS, m.size());
 
         assertEquals("4", m.get("One")); // case shouldn't matter
         assertEquals("5", m.get("two"));
         assertEquals("SIX", m.get("THREE"));
 
-        assertFalse(this.rs.next());
+        assertFalse(this.getResultSet().next());
     }
 
     public void testToMapOrdering() throws SQLException {
 
-        assertTrue(this.rs.next());
-        final Map<String, Object> m = processor.toMap(this.rs);
+        assertTrue(this.getResultSet().next());
+        final Map<String, Object> m = processor.toMap(this.getResultSet());
 
         final Iterator<String> itr = m.keySet().iterator();
         assertEquals("one", itr.next());
diff --git a/src/test/java/org/apache/commons/dbutils/BeanProcessorTest.java b/src/test/java/org/apache/commons/dbutils/BeanProcessorTest.java
index 67364c2..7da73d5 100644
--- a/src/test/java/org/apache/commons/dbutils/BeanProcessorTest.java
+++ b/src/test/java/org/apache/commons/dbutils/BeanProcessorTest.java
@@ -156,7 +156,7 @@
     }
 
     private static final class TestNoGetter {
-        public String testField;
+        private String testField;
 
         /**
          * Add setter to trigger JavaBeans to populate a PropertyDescriptor
@@ -169,7 +169,7 @@
     }
 
     private static final class TestWrongSetter {
-        public Integer testField;
+        private Integer testField;
 
         public Integer getTestField() {
             return testField;
@@ -268,32 +268,33 @@
 
     public void testProcessWithPopulateBean() throws SQLException {
         TestBean b = new TestBean();
-
-        assertTrue(this.rs.next());
-        b = beanProc.populateBean(this.rs, b);
+        ResultSet rs = this.getResultSet();
+        assertTrue(rs.next());
+        b = beanProc.populateBean(rs, b);
         assertEquals(13.0, b.getColumnProcessorDoubleTest(), 0);
         assertEquals(b.getThree(), TestBean.Ordinal.THREE);
 
-        assertTrue(this.rs.next());
-        b = beanProc.populateBean(this.rs, b);
+        assertTrue(rs.next());
+        b = beanProc.populateBean(rs, b);
         assertEquals(13.0, b.getColumnProcessorDoubleTest(), 0);
         assertEquals(b.getThree(), TestBean.Ordinal.SIX);
 
-        assertFalse(this.rs.next());
+        assertFalse(rs.next());
     }
 
     public void testProcessWithToBean() throws SQLException {
-        assertTrue(this.rs.next());
-        TestBean b = beanProc.toBean(this.rs, TestBean.class);
+        ResultSet rs = this.getResultSet();
+        assertTrue(rs.next());
+        TestBean b = beanProc.toBean(rs, TestBean.class);
         assertEquals(13.0, b.getColumnProcessorDoubleTest(), 0);
         assertEquals(b.getThree(), TestBean.Ordinal.THREE);
 
-        assertTrue(this.rs.next());
-        b = beanProc.toBean(this.rs, TestBean.class);
+        assertTrue(rs.next());
+        b = beanProc.toBean(rs, TestBean.class);
         assertEquals(13.0, b.getColumnProcessorDoubleTest(), 0);
         assertEquals(b.getThree(), TestBean.Ordinal.SIX);
 
-        assertFalse(this.rs.next());
+        assertFalse(rs.next());
     }
 
     public void testWrongSetterParamCount() throws Exception {
diff --git a/src/test/java/org/apache/commons/dbutils/GenerousBeanProcessorTest.java b/src/test/java/org/apache/commons/dbutils/GenerousBeanProcessorTest.java
index 1e0552b..212de67 100644
--- a/src/test/java/org/apache/commons/dbutils/GenerousBeanProcessorTest.java
+++ b/src/test/java/org/apache/commons/dbutils/GenerousBeanProcessorTest.java
@@ -62,11 +62,11 @@
         }
     }
 
-    GenerousBeanProcessor processor = new GenerousBeanProcessor();
+    private GenerousBeanProcessor processor = new GenerousBeanProcessor();
     @Mock
-    ResultSetMetaData metaData;
+    private ResultSetMetaData metaData;
 
-    PropertyDescriptor[] propDescriptors;
+    private PropertyDescriptor[] propDescriptors;
 
     @Before
     public void setUp() throws Exception {
diff --git a/src/test/java/org/apache/commons/dbutils/OutParameterTest.java b/src/test/java/org/apache/commons/dbutils/OutParameterTest.java
index cb5481e..de0b0bd 100644
--- a/src/test/java/org/apache/commons/dbutils/OutParameterTest.java
+++ b/src/test/java/org/apache/commons/dbutils/OutParameterTest.java
@@ -39,9 +39,9 @@
     private static final int VALUE = 42;
 
     @Mock
-    CallableStatement stmt;
+    private CallableStatement stmt;
 
-    OutParameter<Number> parameter;
+    private OutParameter<Number> parameter;
 
     @Before
     public void setUp() throws Exception {
diff --git a/src/test/java/org/apache/commons/dbutils/QueryRunnerTest.java b/src/test/java/org/apache/commons/dbutils/QueryRunnerTest.java
index a33d038..424d166 100644
--- a/src/test/java/org/apache/commons/dbutils/QueryRunnerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/QueryRunnerTest.java
@@ -87,33 +87,33 @@
         }
     }
 
-    QueryRunner runner;
+    private QueryRunner runner;
 
-    ArrayHandler handler;
+    private ArrayHandler handler;
 
     @Mock
-    DataSource dataSource;
+    private DataSource dataSource;
 
     @Mock
-    Connection conn;
+    private Connection conn;
 
     @Mock
-    PreparedStatement prepStmt;
+    private PreparedStatement prepStmt;
 
     @Mock
-    Statement stmt;
+    private Statement stmt;
 
     @Mock
-    CallableStatement call;
+    private CallableStatement call;
 
     @Mock
-    ParameterMetaData meta;
+    private ParameterMetaData meta;
 
     @Mock
-    ResultSet results;
+    private ResultSet results;
 
     @Mock
-    ResultSetMetaData resultsMeta;
+    private ResultSetMetaData resultsMeta;
 
     //
     // Batch test cases
@@ -685,7 +685,7 @@
     public void testExecuteWithMultipleResultSets() throws Exception {
         when(call.execute()).thenReturn(true);
         when(call.getMoreResults()).thenAnswer(new Answer<Boolean>() {
-            int count = 1;
+            private int count = 1;
             @Override
             public Boolean answer(final InvocationOnMock invocation) {
                 return ++count <= 3;
diff --git a/src/test/java/org/apache/commons/dbutils/ResultSetIteratorTest.java b/src/test/java/org/apache/commons/dbutils/ResultSetIteratorTest.java
index ad18c68..3357245 100644
--- a/src/test/java/org/apache/commons/dbutils/ResultSetIteratorTest.java
+++ b/src/test/java/org/apache/commons/dbutils/ResultSetIteratorTest.java
@@ -40,7 +40,7 @@
 
     public void testNext() {
 
-        final Iterator<Object[]> iter = new ResultSetIterator(this.rs);
+        final Iterator<Object[]> iter = new ResultSetIterator(this.getResultSet());
 
         assertTrue(iter.hasNext());
         Object[] row = iter.next();
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/ArrayHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/ArrayHandlerTest.java
index 9fbd715..5e0b985 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/ArrayHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/ArrayHandlerTest.java
@@ -32,14 +32,14 @@
 
     public void testEmptyResultSetHandle() throws SQLException {
         final ResultSetHandler<Object[]> h = new ArrayHandler();
-        final Object[] results = h.handle(this.emptyResultSet);
+        final Object[] results = h.handle(this.getEmptyResultSet());
 
         assertThat(results, is(emptyArray()));
     }
 
     public void testHandle() throws SQLException {
         final ResultSetHandler<Object[]> h = new ArrayHandler();
-        final Object[] results = h.handle(this.rs);
+        final Object[] results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(COLS, results.length);
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/ArrayListHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/ArrayListHandlerTest.java
index 4c36f76..f893ffd 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/ArrayListHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/ArrayListHandlerTest.java
@@ -30,7 +30,7 @@
 
     public void testEmptyResultSetHandle() throws SQLException {
         final ResultSetHandler<List<Object[]>> h = new ArrayListHandler();
-        final List<Object[]> results = h.handle(this.emptyResultSet);
+        final List<Object[]> results = h.handle(this.getEmptyResultSet());
 
         assertNotNull(results);
         assertTrue(results.isEmpty());
@@ -38,7 +38,7 @@
 
     public void testHandle() throws SQLException {
         final ResultSetHandler<List<Object[]>> h = new ArrayListHandler();
-        final List<Object[]> results = h.handle(this.rs);
+        final List<Object[]> results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(ROWS, results.size());
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/BeanHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/BeanHandlerTest.java
index 63913f0..0b80dab 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/BeanHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/BeanHandlerTest.java
@@ -42,14 +42,14 @@
 
     public void testEmptyResultSetHandle() throws SQLException {
         final ResultSetHandler<TestBean> h = new BeanHandler<>(TestBean.class);
-        final TestBean results = h.handle(this.emptyResultSet);
+        final TestBean results = h.handle(this.getEmptyResultSet());
 
         assertNull(results);
     }
 
     public void testHandle() throws SQLException {
         final ResultSetHandler<TestBean> h = new BeanHandler<>(TestBean.class);
-        final TestBean results = h.handle(this.rs);
+        final TestBean results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals("1", results.getOne());
@@ -60,7 +60,7 @@
 
     public void testHandleToInterface() throws SQLException {
         final ResultSetHandler<SubTestBeanInterface> h = new BeanHandler<>(SubTestBean.class);
-        final SubTestBeanInterface results = h.handle(this.rs);
+        final SubTestBeanInterface results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals("1", results.getOne());
@@ -71,7 +71,7 @@
 
     public void testHandleToSuperClass() throws SQLException {
         final ResultSetHandler<TestBean> h = new BeanHandler<>(SubTestBean.class);
-        final TestBean results = h.handle(this.rs);
+        final TestBean results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals("1", results.getOne());
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/BeanListHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/BeanListHandlerTest.java
index 1d60cc4..6b851f2 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/BeanListHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/BeanListHandlerTest.java
@@ -44,7 +44,7 @@
 
     public void testEmptyResultSetHandle() throws SQLException {
         final ResultSetHandler<List<TestBean>> h = new BeanListHandler<>(TestBean.class);
-        final List<TestBean> results = h.handle(this.emptyResultSet);
+        final List<TestBean> results = h.handle(this.getEmptyResultSet());
 
         assertNotNull(results);
         assertTrue(results.isEmpty());
@@ -52,7 +52,7 @@
 
     public void testHandle() throws SQLException {
         final ResultSetHandler<List<TestBean>> h = new BeanListHandler<>(TestBean.class);
-        final List<TestBean> results = h.handle(this.rs);
+        final List<TestBean> results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(ROWS, results.size());
@@ -79,7 +79,7 @@
 
     public void testHandleToInterface() throws SQLException {
         final ResultSetHandler<List<SubTestBeanInterface>> h = new BeanListHandler<>(SubTestBean.class);
-        final List<SubTestBeanInterface> results = h.handle(this.rs);
+        final List<SubTestBeanInterface> results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(ROWS, results.size());
@@ -109,7 +109,7 @@
 
     public void testHandleToSuperClass() throws SQLException {
         final ResultSetHandler<List<TestBean>> h = new BeanListHandler<>(SubTestBean.class);
-        final List<TestBean> results = h.handle(this.rs);
+        final List<TestBean> results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(ROWS, results.size());
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/ColumnListHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/ColumnListHandlerTest.java
index cd55a70..2f4d88e 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/ColumnListHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/ColumnListHandlerTest.java
@@ -16,6 +16,7 @@
  */
 package org.apache.commons.dbutils.handlers;
 
+import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.util.List;
 
@@ -27,9 +28,10 @@
  */
 public class ColumnListHandlerTest extends BaseTestCase {
 
+
     public void testColumnIndexHandle() throws SQLException {
         final ResultSetHandler<List<String>> h = new ColumnListHandler<>(2);
-        final List<String> results = h.handle(this.rs);
+        final List<String> results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(ROWS, results.size());
@@ -40,7 +42,7 @@
 
     public void testColumnNameHandle() throws SQLException {
         final ResultSetHandler<List<Integer>> h = new ColumnListHandler<>("intTest");
-        final List<Integer> results = h.handle(this.rs);
+        final List<Integer> results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(ROWS, results.size());
@@ -51,7 +53,7 @@
 
     public void testEmptyResultSetHandle() throws SQLException {
         final ResultSetHandler<List<String>> h = new ColumnListHandler<>();
-        final List<String> results = h.handle(this.emptyResultSet);
+        final List<String> results = h.handle(this.getEmptyResultSet());
 
         assertNotNull(results);
         assertTrue(results.isEmpty());
@@ -59,7 +61,7 @@
 
     public void testHandle() throws SQLException {
         final ResultSetHandler<List<String>> h = new ColumnListHandler<>();
-        final List<String> results = h.handle(this.rs);
+        final List<String> results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(ROWS, results.size());
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/KeyedHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/KeyedHandlerTest.java
index 6202f43..b5e0b26 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/KeyedHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/KeyedHandlerTest.java
@@ -18,6 +18,7 @@
 
 import static org.mockito.Mockito.mock;
 
+import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.util.Map;
 import java.util.Map.Entry;
@@ -28,9 +29,10 @@
 
 public class KeyedHandlerTest extends BaseTestCase {
 
+
     public void testColumnIndexHandle() throws SQLException {
         final ResultSetHandler<Map<String, Map<String, Object>>> h = new KeyedHandler<>(2);
-        final Map<String, Map<String, Object>> results = h.handle(this.rs);
+        final Map<String, Map<String, Object>> results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(ROWS, results.size());
@@ -51,7 +53,7 @@
 
     public void testColumnNameHandle() throws SQLException {
         final ResultSetHandler<Map<Integer, Map<String, Object>>> h = new KeyedHandler<>("intTest");
-        final Map<Integer, Map<String, Object>> results = h.handle(this.rs);
+        final Map<Integer, Map<String, Object>> results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(ROWS, results.size());
@@ -72,7 +74,7 @@
 
     public void testEmptyResultSetHandle() throws SQLException {
         final ResultSetHandler<Map<String, Map<String, Object>>> h = new KeyedHandler<>();
-        final Map<String, Map<String, Object>> results = h.handle(this.emptyResultSet);
+        final Map<String, Map<String, Object>> results = h.handle(this.getEmptyResultSet());
         assertNotNull(results);
         assertTrue(results.isEmpty());
     }
@@ -80,7 +82,7 @@
     public void testHandle() throws SQLException {
         final ResultSetHandler<Map<String, Map<String, Object>>> h = new KeyedHandler<>();
 
-        final Map<String, Map<String, Object>> results = h.handle(this.rs);
+        final Map<String, Map<String, Object>> results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(ROWS, results.size());
@@ -102,7 +104,7 @@
     public void testInjectedRowProcess() throws Exception {
         final RowProcessor mockProc = mock(RowProcessor.class);
         final ResultSetHandler<Map<String, Map<String, Object>>> h = new KeyedHandler<>(mockProc);
-        final Map<String, Map<String, Object>> results = h.handle(this.rs);
+        final Map<String, Map<String, Object>> results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(ROWS, results.size());
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/MapHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/MapHandlerTest.java
index 4026266..775afd8 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/MapHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/MapHandlerTest.java
@@ -29,14 +29,14 @@
 
     public void testEmptyResultSetHandle() throws SQLException {
         final ResultSetHandler<Map<String, Object>> h = new MapHandler();
-        final Map<String, Object> results = h.handle(this.emptyResultSet);
+        final Map<String, Object> results = h.handle(this.getEmptyResultSet());
 
         assertNull(results);
     }
 
     public void testHandle() throws SQLException {
         final ResultSetHandler<Map<String, Object>> h = new MapHandler();
-        final Map<String, Object> results = h.handle(this.rs);
+        final Map<String, Object> results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(COLS, results.size());
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/MapListHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/MapListHandlerTest.java
index 12efe2c..7c0e790 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/MapListHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/MapListHandlerTest.java
@@ -31,7 +31,7 @@
 
     public void testEmptyResultSetHandle() throws SQLException {
         final ResultSetHandler<List<Map<String, Object>>> h = new MapListHandler();
-        final List<Map<String, Object>> results = h.handle(this.emptyResultSet);
+        final List<Map<String, Object>> results = h.handle(this.getEmptyResultSet());
 
         assertNotNull(results);
         assertTrue(results.isEmpty());
@@ -39,7 +39,7 @@
 
     public void testHandle() throws SQLException {
         final ResultSetHandler<List<Map<String, Object>>> h = new MapListHandler();
-        final List<Map<String, Object>> results = h.handle(this.rs);
+        final List<Map<String, Object>> results = h.handle(this.getResultSet());
 
         assertNotNull(results);
         assertEquals(ROWS, results.size());
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/ScalarHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/ScalarHandlerTest.java
index 0dbc022..aac5a92 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/ScalarHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/ScalarHandlerTest.java
@@ -25,27 +25,27 @@
 
     public void testColumnIndexHandle() throws SQLException {
         final ResultSetHandler<String> h = new ScalarHandler<>(2);
-        final Object results = h.handle(this.rs);
+        final Object results = h.handle(this.getResultSet());
         assertNotNull(results);
         assertEquals("2", results);
     }
 
     public void testColumnNameHandle() throws SQLException {
         final ResultSetHandler<Integer> h = new ScalarHandler<>("intTest");
-        final Object results = h.handle(this.rs);
+        final Object results = h.handle(this.getResultSet());
         assertNotNull(results);
         assertEquals(Integer.valueOf(1), results);
     }
 
     public void testEmptyResultSetHandle() throws SQLException {
         final ResultSetHandler<String> h = new ScalarHandler<>();
-        final Object results = h.handle(this.emptyResultSet);
+        final Object results = h.handle(this.getEmptyResultSet());
         assertNull(results);
     }
 
     public void testHandle() throws SQLException {
         final ResultSetHandler<String> h = new ScalarHandler<>();
-        final Object results = h.handle(this.rs);
+        final Object results = h.handle(this.getResultSet());
         assertNotNull(results);
         assertEquals("1", results);
     }
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/columns/AbstractTestColumnHandler.java b/src/test/java/org/apache/commons/dbutils/handlers/columns/AbstractTestColumnHandler.java
index 1b0878d..caf16f5 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/columns/AbstractTestColumnHandler.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/columns/AbstractTestColumnHandler.java
@@ -28,15 +28,27 @@
 public abstract class AbstractTestColumnHandler<T> {
 
     @Mock
-    protected ResultSet rs;
-    protected final ColumnHandler<T> handler;
-    protected final Class<?> matchingType;
+    private ResultSet rs;
+    private final ColumnHandler<T> handler;
+    private final Class<?> matchingType;
 
     public AbstractTestColumnHandler(final ColumnHandler<T> handler, final Class<?> matchingType) {
         this.handler = handler;
         this.matchingType = matchingType;
     }
 
+    public ResultSet getResultSet() {
+        return this.rs;
+    }
+
+    public ColumnHandler<T> getColumnHandler() {
+        return this.handler;
+    }
+
+    public Class<?> getMatchingType() {
+        return this.matchingType;
+    }
+
     @Test
     public abstract void testApplyType() throws Exception;
 
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/columns/BooleanColumnHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/columns/BooleanColumnHandlerTest.java
index 35820ee..9a50041 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/columns/BooleanColumnHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/columns/BooleanColumnHandlerTest.java
@@ -23,6 +23,8 @@
 import org.junit.runner.RunWith;
 import org.mockito.junit.MockitoJUnitRunner;
 
+import java.sql.ResultSet;
+
 @RunWith(MockitoJUnitRunner.class)
 public class BooleanColumnHandlerTest extends AbstractTestColumnHandler<Boolean> {
 
@@ -33,7 +35,8 @@
     @Override
     @Test
     public void testApplyType() throws Exception {
+        ResultSet rs = getResultSet();
         when(rs.getBoolean(1)).thenReturn(Boolean.TRUE);
-        assertEquals(Boolean.class, handler.apply(rs, 1).getClass());
+        assertEquals(Boolean.class, getColumnHandler().apply(rs, 1).getClass());
     }
 }
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/columns/ByteColumnHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/columns/ByteColumnHandlerTest.java
index 3dd36c4..efe1b15 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/columns/ByteColumnHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/columns/ByteColumnHandlerTest.java
@@ -23,6 +23,8 @@
 import org.junit.runner.RunWith;
 import org.mockito.junit.MockitoJUnitRunner;
 
+import java.sql.ResultSet;
+
 @RunWith(MockitoJUnitRunner.class)
 public class ByteColumnHandlerTest extends AbstractTestColumnHandler<Byte> {
 
@@ -33,7 +35,8 @@
     @Override
     @Test
     public void testApplyType() throws Exception {
+        ResultSet rs = getResultSet();
         when(rs.getByte(1)).thenReturn(Byte.MIN_VALUE);
-        assertEquals(Byte.class, handler.apply(rs, 1).getClass());
+        assertEquals(Byte.class, getColumnHandler().apply(rs, 1).getClass());
     }
 }
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/columns/DoubleColumnHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/columns/DoubleColumnHandlerTest.java
index 8436b37..92eed1f 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/columns/DoubleColumnHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/columns/DoubleColumnHandlerTest.java
@@ -23,6 +23,8 @@
 import org.junit.runner.RunWith;
 import org.mockito.junit.MockitoJUnitRunner;
 
+import java.sql.ResultSet;
+
 @RunWith(MockitoJUnitRunner.class)
 public class DoubleColumnHandlerTest extends AbstractTestColumnHandler<Double> {
 
@@ -33,7 +35,8 @@
     @Override
     @Test
     public void testApplyType() throws Exception {
+        ResultSet rs = getResultSet();
         when(rs.getDouble(1)).thenReturn(Double.MIN_VALUE);
-        assertEquals(Double.class, handler.apply(rs, 1).getClass());
+        assertEquals(Double.class, getColumnHandler().apply(rs, 1).getClass());
     }
 }
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/columns/FloatColumnHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/columns/FloatColumnHandlerTest.java
index f44488b..61c35d1 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/columns/FloatColumnHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/columns/FloatColumnHandlerTest.java
@@ -23,6 +23,8 @@
 import org.junit.runner.RunWith;
 import org.mockito.junit.MockitoJUnitRunner;
 
+import java.sql.ResultSet;
+
 @RunWith(MockitoJUnitRunner.class)
 public class FloatColumnHandlerTest extends AbstractTestColumnHandler<Float> {
 
@@ -33,7 +35,8 @@
     @Override
     @Test
     public void testApplyType() throws Exception {
+        ResultSet rs = getResultSet();
         when(rs.getFloat(1)).thenReturn(Float.MIN_VALUE);
-        assertEquals(Float.class, handler.apply(rs, 1).getClass());
+        assertEquals(Float.class, getColumnHandler().apply(rs, 1).getClass());
     }
 }
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/columns/IntegerColumnHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/columns/IntegerColumnHandlerTest.java
index bd00b93..48ce6ec 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/columns/IntegerColumnHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/columns/IntegerColumnHandlerTest.java
@@ -34,13 +34,13 @@
     @Override
     @Test
     public void testApplyType() throws Exception {
-        when(rs.getInt(1)).thenReturn(Integer.MIN_VALUE);
-        assertEquals(Integer.class, handler.apply(rs, 1).getClass());
+        when(getResultSet().getInt(1)).thenReturn(Integer.MIN_VALUE);
+        assertEquals(Integer.class, getColumnHandler().apply(getResultSet(), 1).getClass());
     }
 
     @Override
     @Test
     public void testMatchNegative() {
-        assertFalse(handler.match(Float.class));
+        assertFalse(getColumnHandler().match(Float.class));
     }
 }
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/columns/LongColumnHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/columns/LongColumnHandlerTest.java
index d58c6ef..bb69a50 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/columns/LongColumnHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/columns/LongColumnHandlerTest.java
@@ -33,7 +33,7 @@
     @Override
     @Test
     public void testApplyType() throws Exception {
-        when(rs.getLong(1)).thenReturn(Long.MIN_VALUE);
-        assertEquals(Long.class, handler.apply(rs, 1).getClass());
+        when(getResultSet().getLong(1)).thenReturn(Long.MIN_VALUE);
+        assertEquals(Long.class, getColumnHandler().apply(getResultSet(), 1).getClass());
     }
 }
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/columns/SQLXMLColumnHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/columns/SQLXMLColumnHandlerTest.java
index a476f0e..6f72cad 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/columns/SQLXMLColumnHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/columns/SQLXMLColumnHandlerTest.java
@@ -39,7 +39,7 @@
     @Override
     @Test
     public void testApplyType() throws Exception {
-        when(rs.getSQLXML(1)).thenReturn(sqlxml);
-        assertTrue(SQLXML.class.isAssignableFrom(handler.apply(rs, 1).getClass()));
+        when(getResultSet().getSQLXML(1)).thenReturn(sqlxml);
+        assertTrue(SQLXML.class.isAssignableFrom(getColumnHandler().apply(getResultSet(), 1).getClass()));
     }
 }
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/columns/ShortColumnHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/columns/ShortColumnHandlerTest.java
index 33d62d0..5a4462b 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/columns/ShortColumnHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/columns/ShortColumnHandlerTest.java
@@ -33,7 +33,7 @@
     @Override
     @Test
     public void testApplyType() throws Exception {
-        when(rs.getShort(1)).thenReturn(Short.MIN_VALUE);
-        assertEquals(Short.class, handler.apply(rs, 1).getClass());
+        when(getResultSet().getShort(1)).thenReturn(Short.MIN_VALUE);
+        assertEquals(Short.class, getColumnHandler().apply(getResultSet(), 1).getClass());
     }
 }
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/columns/StringColumnHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/columns/StringColumnHandlerTest.java
index d9f1988..bf26f17 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/columns/StringColumnHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/columns/StringColumnHandlerTest.java
@@ -33,7 +33,7 @@
     @Override
     @Test
     public void testApplyType() throws Exception {
-        when(rs.getString(1)).thenReturn("tester");
-        assertEquals(String.class, handler.apply(rs, 1).getClass());
+        when(getResultSet().getString(1)).thenReturn("tester");
+        assertEquals(String.class, getColumnHandler().apply(getResultSet(), 1).getClass());
     }
 }
diff --git a/src/test/java/org/apache/commons/dbutils/handlers/columns/TimestampColumnHandlerTest.java b/src/test/java/org/apache/commons/dbutils/handlers/columns/TimestampColumnHandlerTest.java
index 24116a4..9655b59 100644
--- a/src/test/java/org/apache/commons/dbutils/handlers/columns/TimestampColumnHandlerTest.java
+++ b/src/test/java/org/apache/commons/dbutils/handlers/columns/TimestampColumnHandlerTest.java
@@ -36,7 +36,7 @@
     @Override
     @Test
     public void testApplyType() throws Exception {
-        when(rs.getTimestamp(1)).thenReturn(new Timestamp(new Date().getTime()));
-        assertEquals(Timestamp.class, handler.apply(rs, 1).getClass());
+        when(getResultSet().getTimestamp(1)).thenReturn(new Timestamp(new Date().getTime()));
+        assertEquals(Timestamp.class, getColumnHandler().apply(getResultSet(), 1).getClass());
     }
 }
diff --git a/src/test/java/org/apache/commons/dbutils/wrappers/SqlNullCheckedResultSetTest.java b/src/test/java/org/apache/commons/dbutils/wrappers/SqlNullCheckedResultSetTest.java
index f2614f6..b4c6dcc 100644
--- a/src/test/java/org/apache/commons/dbutils/wrappers/SqlNullCheckedResultSetTest.java
+++ b/src/test/java/org/apache/commons/dbutils/wrappers/SqlNullCheckedResultSetTest.java
@@ -229,6 +229,7 @@
     }

 

     private SqlNullCheckedResultSet rs2;

+    private static ResultSet rs;

 

     /**

      * Sets up instance variables required by this test case.

@@ -239,7 +240,8 @@
 

         rs2 = new SqlNullCheckedResultSet(ProxyFactory.instance().createResultSet(new SqlNullUncheckedMockResultSet()));

 

-        rs = ProxyFactory.instance().createResultSet(rs2); // Override superclass field

+        setResultSet(ProxyFactory.instance().createResultSet(rs2)); // Override superclass field

+        rs = getResultSet();

     }

 

     /**

diff --git a/src/test/java/org/apache/commons/dbutils/wrappers/StringTrimmedResultSetTest.java b/src/test/java/org/apache/commons/dbutils/wrappers/StringTrimmedResultSetTest.java
index 2510340..9fca7de 100644
--- a/src/test/java/org/apache/commons/dbutils/wrappers/StringTrimmedResultSetTest.java
+++ b/src/test/java/org/apache/commons/dbutils/wrappers/StringTrimmedResultSetTest.java
@@ -31,17 +31,17 @@
     @Override
     public void setUp() throws Exception {
         super.setUp();
-        this.rs = StringTrimmedResultSet.wrap(this.rs);
+        this.setResultSet(StringTrimmedResultSet.wrap(this.getResultSet()));
     }
 
     public void testGetObject() throws SQLException {
-        this.rs.next();
-        assertEquals("notInBean", rs.getObject(4));
+        this.getResultSet().next();
+        assertEquals("notInBean", getResultSet().getObject(4));
     }
 
     public void testGetString() throws SQLException {
-        this.rs.next();
-        assertEquals("notInBean", rs.getString(4));
+        this.getResultSet().next();
+        assertEquals("notInBean", getResultSet().getString(4));
     }
 
     /**