/*
* Copyright (c) 2003, PostgreSQL Global Development Group
* See the LICENSE file in the project root for more information.
*/
package org.postgresql.core.v3;
import org.postgresql.test.jdbc2.BaseTest;
import org.junit.Before;
import java.sql.SQLException;
/**
* Test cases to make sure the parameterlist implementation works as expected.
*
* @author Jeremy Whiting jwhiting@redhat.com
*
*/
public class V3ParameterListTests extends BaseTest {
/**
* Test to check the merging of two collections of parameters. All elements
* are kept.
*
* @throws SQLException
* raised exception if setting parameter fails.
*/
public void testMergeOfParameterLists() throws SQLException {
SimpleParameterList s1SPL = new SimpleParameterList(8, transferModeRegistry);
s1SPL.setIntParameter(1, 1);
s1SPL.setIntParameter(2, 2);
s1SPL.setIntParameter(3, 3);
s1SPL.setIntParameter(4, 4);
SimpleParameterList s2SPL = new SimpleParameterList(4, transferModeRegistry);
s2SPL.setIntParameter(1, 5);
s2SPL.setIntParameter(2, 6);
s2SPL.setIntParameter(3, 7);
s2SPL.setIntParameter(4, 8);
s1SPL.appendAll(s2SPL);
assertEquals(
"Expected string representation of values does not match outcome.",
"<[1 ,2 ,3 ,4 ,5 ,6 ,7 ,8]>", s1SPL.toString());
}
public V3ParameterListTests(String test) {
super(test);
}
private TypeTransferModeRegistry transferModeRegistry;
@Override
@Before
protected void setUp() throws Exception {
transferModeRegistry =
new TypeTransferModeRegistry() {
@Override
public boolean useBinaryForSend(int oid) {
return false;
}
@Override
public boolean useBinaryForReceive(int oid) {
return false;
}
};
}
}