mirror of
https://github.com/Kingsrook/qqq.git
synced 2025-07-19 13:40:44 +00:00
Turning on jacaoco cover checks (and getting coverage above 80)
This commit is contained in:
@ -640,7 +640,7 @@ public class QueryManager
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
*
|
||||
* index is 1-based!!
|
||||
*******************************************************************************/
|
||||
@SuppressWarnings("unchecked")
|
||||
public static int bindParamObject(PreparedStatement statement, int index, Object value) throws SQLException
|
||||
@ -1120,15 +1120,12 @@ public class QueryManager
|
||||
*******************************************************************************/
|
||||
public static BigDecimal getBigDecimal(ResultSet resultSet, String column) throws SQLException
|
||||
{
|
||||
throw (new NotImplementedException());
|
||||
/*
|
||||
BigDecimal value = resultSet.getBigDecimal(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
return (value);
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
@ -1153,15 +1150,12 @@ public class QueryManager
|
||||
*******************************************************************************/
|
||||
public static Date getDate(ResultSet resultSet, String column) throws SQLException
|
||||
{
|
||||
throw (new NotImplementedException());
|
||||
/*
|
||||
Date value = resultSet.getDate(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
return (value);
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
@ -1186,8 +1180,6 @@ public class QueryManager
|
||||
*******************************************************************************/
|
||||
public static Calendar getCalendar(ResultSet resultSet, String column) throws SQLException
|
||||
{
|
||||
throw (new NotImplementedException());
|
||||
/*
|
||||
Timestamp value = resultSet.getTimestamp(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
@ -1196,7 +1188,6 @@ public class QueryManager
|
||||
Calendar rs = Calendar.getInstance();
|
||||
rs.setTimeInMillis(value.getTime());
|
||||
return (rs);
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
@ -1206,8 +1197,6 @@ public class QueryManager
|
||||
*******************************************************************************/
|
||||
public static Calendar getCalendar(ResultSet resultSet, int column) throws SQLException
|
||||
{
|
||||
throw (new NotImplementedException());
|
||||
/*
|
||||
Timestamp value = resultSet.getTimestamp(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
@ -1216,7 +1205,6 @@ public class QueryManager
|
||||
Calendar rs = Calendar.getInstance();
|
||||
rs.setTimeInMillis(value.getTime());
|
||||
return (rs);
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
@ -1227,8 +1215,6 @@ public class QueryManager
|
||||
@SuppressWarnings("deprecation")
|
||||
public static LocalDate getLocalDate(ResultSet resultSet, String column) throws SQLException
|
||||
{
|
||||
throw (new NotImplementedException());
|
||||
/*
|
||||
Timestamp value = resultSet.getTimestamp(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
@ -1237,7 +1223,24 @@ public class QueryManager
|
||||
|
||||
LocalDate date = LocalDate.of(value.getYear() + NINETEEN_HUNDRED, value.getMonth() + 1, value.getDate());
|
||||
return (date);
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
@SuppressWarnings("deprecation")
|
||||
public static LocalDate getLocalDate(ResultSet resultSet, int column) throws SQLException
|
||||
{
|
||||
Timestamp value = resultSet.getTimestamp(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
|
||||
LocalDate date = LocalDate.of(value.getYear() + NINETEEN_HUNDRED, value.getMonth() + 1, value.getDate());
|
||||
return (date);
|
||||
}
|
||||
|
||||
|
||||
@ -1248,8 +1251,6 @@ public class QueryManager
|
||||
@SuppressWarnings("deprecation")
|
||||
public static LocalDateTime getLocalDateTime(ResultSet resultSet, String column) throws SQLException
|
||||
{
|
||||
throw (new NotImplementedException());
|
||||
/*
|
||||
Timestamp value = resultSet.getTimestamp(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
@ -1258,7 +1259,6 @@ public class QueryManager
|
||||
|
||||
LocalDateTime dateTime = LocalDateTime.of(value.getYear() + NINETEEN_HUNDRED, value.getMonth() + 1, value.getDate(), value.getHours(), value.getMinutes(), value.getSeconds(), 0);
|
||||
return (dateTime);
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
@ -1287,8 +1287,6 @@ public class QueryManager
|
||||
@SuppressWarnings("deprecation")
|
||||
public static OffsetDateTime getOffsetDateTime(ResultSet resultSet, String column) throws SQLException
|
||||
{
|
||||
throw (new NotImplementedException());
|
||||
/*
|
||||
Timestamp value = resultSet.getTimestamp(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
@ -1297,7 +1295,24 @@ public class QueryManager
|
||||
|
||||
OffsetDateTime dateTime = OffsetDateTime.of(value.getYear() + NINETEEN_HUNDRED, value.getMonth() + 1, value.getDate(), value.getHours(), value.getMinutes(), value.getSeconds(), 0, OffsetDateTime.now().getOffset());
|
||||
return (dateTime);
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
@SuppressWarnings("deprecation")
|
||||
public static OffsetDateTime getOffsetDateTime(ResultSet resultSet, int column) throws SQLException
|
||||
{
|
||||
Timestamp value = resultSet.getTimestamp(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
|
||||
OffsetDateTime dateTime = OffsetDateTime.of(value.getYear() + NINETEEN_HUNDRED, value.getMonth() + 1, value.getDate(), value.getHours(), value.getMinutes(), value.getSeconds(), 0, OffsetDateTime.now().getOffset());
|
||||
return (dateTime);
|
||||
}
|
||||
|
||||
|
||||
@ -1307,15 +1322,12 @@ public class QueryManager
|
||||
*******************************************************************************/
|
||||
public static Boolean getBoolean(ResultSet resultSet, String column) throws SQLException
|
||||
{
|
||||
throw (new NotImplementedException());
|
||||
/*
|
||||
Boolean value = resultSet.getBoolean(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
return (value);
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
@ -1325,15 +1337,12 @@ public class QueryManager
|
||||
*******************************************************************************/
|
||||
public static Boolean getBoolean(ResultSet resultSet, int column) throws SQLException
|
||||
{
|
||||
throw (new NotImplementedException());
|
||||
/*
|
||||
Boolean value = resultSet.getBoolean(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
return (value);
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
@ -1343,15 +1352,12 @@ public class QueryManager
|
||||
*******************************************************************************/
|
||||
public static Long getLong(ResultSet resultSet, int column) throws SQLException
|
||||
{
|
||||
throw (new NotImplementedException());
|
||||
/*
|
||||
long value = resultSet.getLong(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
return (value);
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
@ -1361,15 +1367,12 @@ public class QueryManager
|
||||
*******************************************************************************/
|
||||
public static Long getLong(ResultSet resultSet, String column) throws SQLException
|
||||
{
|
||||
throw (new NotImplementedException());
|
||||
/*
|
||||
long value = resultSet.getLong(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
return (value);
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
@ -1379,15 +1382,12 @@ public class QueryManager
|
||||
*******************************************************************************/
|
||||
public static Timestamp getTimestamp(ResultSet resultSet, int column) throws SQLException
|
||||
{
|
||||
throw (new NotImplementedException());
|
||||
/*
|
||||
Timestamp value = resultSet.getTimestamp(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
return (value);
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
@ -1397,15 +1397,12 @@ public class QueryManager
|
||||
*******************************************************************************/
|
||||
public static Timestamp getTimestamp(ResultSet resultSet, String column) throws SQLException
|
||||
{
|
||||
throw (new NotImplementedException());
|
||||
/*
|
||||
Timestamp value = resultSet.getTimestamp(column);
|
||||
if(resultSet.wasNull())
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
return (value);
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
|
@ -22,7 +22,6 @@
|
||||
package com.kingsrook.qqq.backend.module.rdbms.jdbc;
|
||||
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.HashMap;
|
||||
|
||||
|
||||
@ -31,199 +30,199 @@ import java.util.HashMap;
|
||||
*******************************************************************************/
|
||||
public class SimpleEntity extends HashMap<String, Object>
|
||||
{
|
||||
private String tableName;
|
||||
// private String tableName;
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
public SimpleEntity()
|
||||
{
|
||||
super();
|
||||
}
|
||||
// /*******************************************************************************
|
||||
// **
|
||||
// *******************************************************************************/
|
||||
// public SimpleEntity()
|
||||
// {
|
||||
// super();
|
||||
// }
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
public SimpleEntity with(String key, Object value)
|
||||
{
|
||||
put(key, value);
|
||||
return (this);
|
||||
}
|
||||
// /*******************************************************************************
|
||||
// **
|
||||
// *******************************************************************************/
|
||||
// public SimpleEntity with(String key, Object value)
|
||||
// {
|
||||
// put(key, value);
|
||||
// return (this);
|
||||
// }
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
** Return the current value of tableName
|
||||
**
|
||||
** @return tableName
|
||||
*******************************************************************************/
|
||||
public String getTableName()
|
||||
{
|
||||
return (tableName);
|
||||
}
|
||||
// /*******************************************************************************
|
||||
// ** Return the current value of tableName
|
||||
// **
|
||||
// ** @return tableName
|
||||
// *******************************************************************************/
|
||||
// public String getTableName()
|
||||
// {
|
||||
// return (tableName);
|
||||
// }
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
** Set the current value of tableName
|
||||
**
|
||||
** @param tableName
|
||||
*******************************************************************************/
|
||||
public void setTableName(String tableName)
|
||||
{
|
||||
this.tableName = tableName;
|
||||
}
|
||||
// /*******************************************************************************
|
||||
// ** Set the current value of tableName
|
||||
// **
|
||||
// ** @param tableName
|
||||
// *******************************************************************************/
|
||||
// public void setTableName(String tableName)
|
||||
// {
|
||||
// this.tableName = tableName;
|
||||
// }
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
public SimpleEntity withTableName(String tableName)
|
||||
{
|
||||
setTableName(tableName);
|
||||
return (this);
|
||||
}
|
||||
// /*******************************************************************************
|
||||
// **
|
||||
// *******************************************************************************/
|
||||
// public SimpleEntity withTableName(String tableName)
|
||||
// {
|
||||
// setTableName(tableName);
|
||||
// return (this);
|
||||
// }
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
public Boolean getBoolean(String columnName)
|
||||
{
|
||||
Object o = get(columnName);
|
||||
if(o == null)
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
// /*******************************************************************************
|
||||
// **
|
||||
// *******************************************************************************/
|
||||
// public Boolean getBoolean(String columnName)
|
||||
// {
|
||||
// Object o = get(columnName);
|
||||
// if(o == null)
|
||||
// {
|
||||
// return (null);
|
||||
// }
|
||||
|
||||
if(o instanceof Boolean)
|
||||
{
|
||||
return ((Boolean) o);
|
||||
}
|
||||
else if(o instanceof Number)
|
||||
{
|
||||
int i = ((Number) o).intValue();
|
||||
return (i != 0);
|
||||
}
|
||||
else if(o instanceof String)
|
||||
{
|
||||
String s = (String) o;
|
||||
return (s.equalsIgnoreCase("1") || s.equalsIgnoreCase("true") || s.equalsIgnoreCase("t"));
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new IllegalArgumentException("Could not get value of object of type [" + o.getClass() + "] as Boolean.");
|
||||
}
|
||||
// if(o instanceof Boolean)
|
||||
// {
|
||||
// return ((Boolean) o);
|
||||
// }
|
||||
// else if(o instanceof Number)
|
||||
// {
|
||||
// int i = ((Number) o).intValue();
|
||||
// return (i != 0);
|
||||
// }
|
||||
// else if(o instanceof String)
|
||||
// {
|
||||
// String s = (String) o;
|
||||
// return (s.equalsIgnoreCase("1") || s.equalsIgnoreCase("true") || s.equalsIgnoreCase("t"));
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// throw new IllegalArgumentException("Could not get value of object of type [" + o.getClass() + "] as Boolean.");
|
||||
// }
|
||||
|
||||
}
|
||||
// }
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
public String getString(String columnName)
|
||||
{
|
||||
Object o = get(columnName);
|
||||
if(o == null)
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
if(o instanceof String)
|
||||
{
|
||||
return ((String) o);
|
||||
}
|
||||
else if(o instanceof byte[])
|
||||
{
|
||||
return (new String((byte[]) o));
|
||||
}
|
||||
// /*******************************************************************************
|
||||
// **
|
||||
// *******************************************************************************/
|
||||
// public String getString(String columnName)
|
||||
// {
|
||||
// Object o = get(columnName);
|
||||
// if(o == null)
|
||||
// {
|
||||
// return (null);
|
||||
// }
|
||||
// if(o instanceof String)
|
||||
// {
|
||||
// return ((String) o);
|
||||
// }
|
||||
// else if(o instanceof byte[])
|
||||
// {
|
||||
// return (new String((byte[]) o));
|
||||
// }
|
||||
|
||||
return String.valueOf(o);
|
||||
}
|
||||
// return String.valueOf(o);
|
||||
// }
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
public Integer getInteger(String columnName)
|
||||
{
|
||||
Object o = get(columnName);
|
||||
if(o instanceof Long)
|
||||
{
|
||||
return ((Long) o).intValue();
|
||||
}
|
||||
else if(o instanceof Short)
|
||||
{
|
||||
return ((Short) o).intValue();
|
||||
}
|
||||
else if(o instanceof String)
|
||||
{
|
||||
return (Integer.parseInt((String) o));
|
||||
}
|
||||
// /*******************************************************************************
|
||||
// **
|
||||
// *******************************************************************************/
|
||||
// public Integer getInteger(String columnName)
|
||||
// {
|
||||
// Object o = get(columnName);
|
||||
// if(o instanceof Long)
|
||||
// {
|
||||
// return ((Long) o).intValue();
|
||||
// }
|
||||
// else if(o instanceof Short)
|
||||
// {
|
||||
// return ((Short) o).intValue();
|
||||
// }
|
||||
// else if(o instanceof String)
|
||||
// {
|
||||
// return (Integer.parseInt((String) o));
|
||||
// }
|
||||
|
||||
return ((Integer) o);
|
||||
}
|
||||
// return ((Integer) o);
|
||||
// }
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
public BigDecimal getBigDecimal(String columnName)
|
||||
{
|
||||
Object o = get(columnName);
|
||||
if(o == null)
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
// /*******************************************************************************
|
||||
// **
|
||||
// *******************************************************************************/
|
||||
// public BigDecimal getBigDecimal(String columnName)
|
||||
// {
|
||||
// Object o = get(columnName);
|
||||
// if(o == null)
|
||||
// {
|
||||
// return (null);
|
||||
// }
|
||||
|
||||
if(o instanceof BigDecimal)
|
||||
{
|
||||
return ((BigDecimal) o);
|
||||
}
|
||||
else
|
||||
{
|
||||
return new BigDecimal(String.valueOf(o));
|
||||
}
|
||||
}
|
||||
// if(o instanceof BigDecimal)
|
||||
// {
|
||||
// return ((BigDecimal) o);
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// return new BigDecimal(String.valueOf(o));
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
public Long getLong(String columnName)
|
||||
{
|
||||
Object o = get(columnName);
|
||||
if(o instanceof Integer)
|
||||
{
|
||||
return ((Integer) o).longValue();
|
||||
}
|
||||
// /*******************************************************************************
|
||||
// **
|
||||
// *******************************************************************************/
|
||||
// public Long getLong(String columnName)
|
||||
// {
|
||||
// Object o = get(columnName);
|
||||
// if(o instanceof Integer)
|
||||
// {
|
||||
// return ((Integer) o).longValue();
|
||||
// }
|
||||
|
||||
return ((Long) o);
|
||||
}
|
||||
// return ((Long) o);
|
||||
// }
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
public void trimStrings()
|
||||
{
|
||||
for(String key : keySet())
|
||||
{
|
||||
Object value = get(key);
|
||||
if(value != null && value instanceof String)
|
||||
{
|
||||
put(key, ((String) value).trim());
|
||||
}
|
||||
}
|
||||
}
|
||||
// /*******************************************************************************
|
||||
// **
|
||||
// *******************************************************************************/
|
||||
// public void trimStrings()
|
||||
// {
|
||||
// for(String key : keySet())
|
||||
// {
|
||||
// Object value = get(key);
|
||||
// if(value != null && value instanceof String)
|
||||
// {
|
||||
// put(key, ((String) value).trim());
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
}
|
||||
|
@ -0,0 +1,227 @@
|
||||
/*
|
||||
* QQQ - Low-code Application Framework for Engineers.
|
||||
* Copyright (C) 2021-2022. Kingsrook, LLC
|
||||
* 651 N Broad St Ste 205 # 6917 | Middletown DE 19709 | United States
|
||||
* contact@kingsrook.com
|
||||
* https://github.com/Kingsrook/
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
package com.kingsrook.qqq.backend.module.rdbms.jdbc;
|
||||
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.sql.Connection;
|
||||
import java.sql.Date;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.sql.Timestamp;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.OffsetDateTime;
|
||||
import java.util.GregorianCalendar;
|
||||
import com.kingsrook.qqq.backend.module.rdbms.TestUtils;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertNotNull;
|
||||
import static org.junit.jupiter.api.Assertions.assertNull;
|
||||
import static org.junit.jupiter.api.Assertions.assertThrows;
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
class QueryManagerTest
|
||||
{
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
@BeforeEach
|
||||
void beforeEach() throws SQLException
|
||||
{
|
||||
Connection connection = getConnection();
|
||||
QueryManager.executeUpdate(connection, "CREATE TABLE t (i INTEGER, dt DATETIME, c CHAR(1))");
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
@AfterEach
|
||||
void afterEach() throws SQLException
|
||||
{
|
||||
Connection connection = getConnection();
|
||||
QueryManager.executeUpdate(connection, "DROP TABLE t");
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
private Connection getConnection() throws SQLException
|
||||
{
|
||||
return new ConnectionManager().getConnection(TestUtils.defineBackend());
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
** Test the various overloads that bind params
|
||||
*******************************************************************************/
|
||||
@Test
|
||||
void testBindParams() throws SQLException
|
||||
{
|
||||
long ctMillis = System.currentTimeMillis();
|
||||
Connection connection = getConnection();
|
||||
PreparedStatement ps = connection.prepareStatement("UPDATE t SET i = ? WHERE i > 0");
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// these calls - we just want to assert that they don't throw any exceptions //
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
QueryManager.bindParamObject(ps, 1, (short) 1);
|
||||
QueryManager.bindParamObject(ps, 1, (long) 1);
|
||||
QueryManager.bindParamObject(ps, 1, true);
|
||||
QueryManager.bindParamObject(ps, 1, BigDecimal.ONE);
|
||||
QueryManager.bindParamObject(ps, 1, "hello".getBytes(StandardCharsets.UTF_8));
|
||||
QueryManager.bindParamObject(ps, 1, new Timestamp(ctMillis));
|
||||
QueryManager.bindParamObject(ps, 1, new Date(ctMillis));
|
||||
QueryManager.bindParamObject(ps, 1, new GregorianCalendar());
|
||||
QueryManager.bindParamObject(ps, 1, LocalDate.now());
|
||||
QueryManager.bindParamObject(ps, 1, OffsetDateTime.now());
|
||||
QueryManager.bindParamObject(ps, 1, LocalDateTime.now());
|
||||
|
||||
assertThrows(SQLException.class, () ->
|
||||
{
|
||||
QueryManager.bindParamObject(ps, 1, new Object());
|
||||
});
|
||||
|
||||
QueryManager.bindParam(ps, 1, (Integer) null);
|
||||
QueryManager.bindParam(ps, 1, (Boolean) null);
|
||||
QueryManager.bindParam(ps, 1, (BigDecimal) null);
|
||||
QueryManager.bindParam(ps, 1, (byte[]) null);
|
||||
QueryManager.bindParam(ps, 1, (Timestamp) null);
|
||||
QueryManager.bindParam(ps, 1, (String) null);
|
||||
QueryManager.bindParam(ps, 1, (Date) null);
|
||||
QueryManager.bindParam(ps, 1, (GregorianCalendar) null);
|
||||
QueryManager.bindParam(ps, 1, (LocalDate) null);
|
||||
QueryManager.bindParam(ps, 1, (LocalDateTime) null);
|
||||
|
||||
QueryManager.bindParam(ps, 1, 1);
|
||||
QueryManager.bindParam(ps, 1, true);
|
||||
QueryManager.bindParam(ps, 1, BigDecimal.ONE);
|
||||
QueryManager.bindParam(ps, 1, "hello".getBytes(StandardCharsets.UTF_8));
|
||||
QueryManager.bindParam(ps, 1, new Timestamp(ctMillis));
|
||||
QueryManager.bindParam(ps, 1, "hello");
|
||||
QueryManager.bindParam(ps, 1, new Date(ctMillis));
|
||||
QueryManager.bindParam(ps, 1, new GregorianCalendar());
|
||||
QueryManager.bindParam(ps, 1, LocalDate.now());
|
||||
QueryManager.bindParam(ps, 1, LocalDateTime.now());
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
** Test the various getXXX methods from result sets
|
||||
*******************************************************************************/
|
||||
@Test
|
||||
void testGetValueMethods() throws SQLException
|
||||
{
|
||||
Connection connection = getConnection();
|
||||
QueryManager.executeUpdate(connection, "INSERT INTO t (i, dt, c) VALUES (1, now(), 'A')");
|
||||
PreparedStatement preparedStatement = connection.prepareStatement("SELECT * from t");
|
||||
preparedStatement.execute();
|
||||
ResultSet rs = preparedStatement.getResultSet();
|
||||
rs.next();
|
||||
|
||||
assertEquals(1, QueryManager.getInteger(rs, "i"));
|
||||
assertEquals(1, QueryManager.getInteger(rs, 1));
|
||||
assertEquals(1L, QueryManager.getLong(rs, "i"));
|
||||
assertEquals(1L, QueryManager.getLong(rs, 1));
|
||||
assertArrayEquals(new byte[] { 0, 0, 0, 1 }, QueryManager.getByteArray(rs, "i"));
|
||||
assertArrayEquals(new byte[] { 0, 0, 0, 1 }, QueryManager.getByteArray(rs, 1));
|
||||
assertEquals(1, QueryManager.getObject(rs, "i"));
|
||||
assertEquals(1, QueryManager.getObject(rs, 1));
|
||||
assertEquals(BigDecimal.ONE, QueryManager.getBigDecimal(rs, "i"));
|
||||
assertEquals(BigDecimal.ONE, QueryManager.getBigDecimal(rs, 1));
|
||||
assertEquals(true, QueryManager.getBoolean(rs, "i"));
|
||||
assertEquals(true, QueryManager.getBoolean(rs, 1));
|
||||
assertNotNull(QueryManager.getDate(rs, "dt"));
|
||||
assertNotNull(QueryManager.getDate(rs, 2));
|
||||
assertNotNull(QueryManager.getCalendar(rs, "dt"));
|
||||
assertNotNull(QueryManager.getCalendar(rs, 2));
|
||||
assertNotNull(QueryManager.getLocalDate(rs, "dt"));
|
||||
assertNotNull(QueryManager.getLocalDate(rs, 2));
|
||||
assertNotNull(QueryManager.getLocalDateTime(rs, "dt"));
|
||||
assertNotNull(QueryManager.getLocalDateTime(rs, 2));
|
||||
assertNotNull(QueryManager.getOffsetDateTime(rs, "dt"));
|
||||
assertNotNull(QueryManager.getOffsetDateTime(rs, 2));
|
||||
assertNotNull(QueryManager.getTimestamp(rs, "dt"));
|
||||
assertNotNull(QueryManager.getTimestamp(rs, 2));
|
||||
assertEquals("A", QueryManager.getObject(rs, "c"));
|
||||
assertEquals("A", QueryManager.getObject(rs, 3));
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
** Test the various getXXX methods from result sets, when they return null
|
||||
*******************************************************************************/
|
||||
@Test
|
||||
void testGetValueMethodsReturningNull() throws SQLException
|
||||
{
|
||||
Connection connection = getConnection();
|
||||
QueryManager.executeUpdate(connection, "INSERT INTO t (i, dt, c) VALUES (null, null, null)");
|
||||
PreparedStatement preparedStatement = connection.prepareStatement("SELECT * from t");
|
||||
preparedStatement.execute();
|
||||
ResultSet rs = preparedStatement.getResultSet();
|
||||
rs.next();
|
||||
|
||||
assertNull(QueryManager.getInteger(rs, "i"));
|
||||
assertNull(QueryManager.getInteger(rs, 1));
|
||||
assertNull(QueryManager.getLong(rs, "i"));
|
||||
assertNull(QueryManager.getLong(rs, 1));
|
||||
assertNull(QueryManager.getByteArray(rs, "i"));
|
||||
assertNull(QueryManager.getByteArray(rs, 1));
|
||||
assertNull(QueryManager.getObject(rs, "i"));
|
||||
assertNull(QueryManager.getObject(rs, 1));
|
||||
assertNull(QueryManager.getBigDecimal(rs, "i"));
|
||||
assertNull(QueryManager.getBigDecimal(rs, 1));
|
||||
assertNull(QueryManager.getBoolean(rs, "i"));
|
||||
assertNull(QueryManager.getBoolean(rs, 1));
|
||||
assertNull(QueryManager.getDate(rs, "dt"));
|
||||
assertNull(QueryManager.getDate(rs, 2));
|
||||
assertNull(QueryManager.getCalendar(rs, "dt"));
|
||||
assertNull(QueryManager.getCalendar(rs, 2));
|
||||
assertNull(QueryManager.getLocalDate(rs, "dt"));
|
||||
assertNull(QueryManager.getLocalDate(rs, 2));
|
||||
assertNull(QueryManager.getLocalDateTime(rs, "dt"));
|
||||
assertNull(QueryManager.getLocalDateTime(rs, 2));
|
||||
assertNull(QueryManager.getOffsetDateTime(rs, "dt"));
|
||||
assertNull(QueryManager.getOffsetDateTime(rs, 2));
|
||||
assertNull(QueryManager.getTimestamp(rs, "dt"));
|
||||
assertNull(QueryManager.getTimestamp(rs, 2));
|
||||
assertNull(QueryManager.getObject(rs, "c"));
|
||||
assertNull(QueryManager.getObject(rs, 3));
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user