01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one or more
03: * contributor license agreements. See the NOTICE file distributed with
04: * this work for additional information regarding copyright ownership.
05: * The ASF licenses this file to You under the Apache License, Version 2.0
06: * (the "License"); you may not use this file except in compliance with
07: * the License. You may obtain a copy of the License at
08: *
09: * http://www.apache.org/licenses/LICENSE-2.0
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */
17: package org.apache.commons.dbutils.wrappers;
18:
19: import java.sql.ResultSet;
20: import java.sql.SQLException;
21:
22: import org.apache.commons.dbutils.BaseTestCase;
23: import org.apache.commons.dbutils.MockResultSet;
24: import org.apache.commons.dbutils.ProxyFactory;
25:
26: /**
27: * StringTrimmedResultSetTest
28: */
29: public class StringTrimmedResultSetTest extends BaseTestCase {
30:
31: public StringTrimmedResultSetTest(String name) {
32: super (name);
33: }
34:
35: public void setUp() throws Exception {
36: super .setUp();
37: this .rs = StringTrimmedResultSet.wrap(this .rs);
38: }
39:
40: public void testGetString() throws SQLException {
41: this .rs.next();
42: assertEquals("notInBean", rs.getString(4));
43: }
44:
45: public void testGetObject() throws SQLException {
46: this .rs.next();
47: assertEquals("notInBean", rs.getObject(4));
48: }
49:
50: /**
51: * Make sure 2 wrappers work together.
52: * @throws SQLException if a database access error occurs
53: */
54: public void testMultipleWrappers() throws Exception {
55: // Create a ResultSet with data
56: Object[][] rows = new Object[][] { { null } };
57: ResultSet rs = MockResultSet.create(metaData, rows);
58:
59: // Wrap the ResultSet with a null checked version
60: SqlNullCheckedResultSet ncrs = new SqlNullCheckedResultSet(rs);
61: ncrs.setNullString(" trim this ");
62: rs = ProxyFactory.instance().createResultSet(ncrs);
63:
64: // Wrap the wrapper with a string trimmed version
65: rs = StringTrimmedResultSet.wrap(rs);
66:
67: rs.next();
68: assertEquals("trim this", rs.getString(1));
69: }
70:
71: }
|