package de.superx.common; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import java.sql.ResultSetMetaData; import java.sql.SQLException; import org.junit.Test; import org.mockito.Mock; import org.mockito.Mockito; /** * Class to test {@link de.superx.common.SxResultSet} * @author hiber * */ public class SxResultRowTest { private SxResultSet sxResultSet = new SxResultSet(); private final String[] TEST_COLUMN_NAMES = new String[] { "Test 1", "Test 2", "Test 3" }; @Mock private ResultSetMetaData resultSetMetaData; @Test public void testConstructor() { assertNotNull("SxResultSet not null", this.sxResultSet); } /** * Method to test {@link de.superx.common.SxResultSet#setColumnNames(String[])} * @author hiber */ @Test public void testSetAndGetColumnNamesWithStringArray() { this.sxResultSet.setColumnNames(this.TEST_COLUMN_NAMES); for (int i = 0; i < this.TEST_COLUMN_NAMES.length; i++) { String resultColumnName = this.sxResultSet.getColumnName(i); assertEquals("value equals passed value", this.TEST_COLUMN_NAMES[i], resultColumnName); } } /** * Method to test {@link de.superx.common.SxResultSet#setColumnNames(ResultSetMetaData)} * @author hiber */ @Test public void testSetAndGetColumnNamesWithResultSetMetaData() throws SQLException { this.resultSetMetaData = Mockito.mock(ResultSetMetaData.class); Mockito.when(Integer.valueOf(this.resultSetMetaData.getColumnCount())).thenReturn(Integer.valueOf(this.TEST_COLUMN_NAMES.length)); Mockito.when(this.resultSetMetaData.getColumnName(1)).thenReturn(this.TEST_COLUMN_NAMES[0]); Mockito.when(this.resultSetMetaData.getColumnName(2)).thenReturn(this.TEST_COLUMN_NAMES[1]); Mockito.when(this.resultSetMetaData.getColumnName(3)).thenReturn(this.TEST_COLUMN_NAMES[2]); this.sxResultSet.setColumnNames(this.resultSetMetaData); for (int i = 0; i < this.TEST_COLUMN_NAMES.length; i++) { String resultColumnName = this.sxResultSet.getColumnName(i); assertEquals("value equals passed value", this.TEST_COLUMN_NAMES[i], resultColumnName); } } }