use of org.apache.cayenne.DataRow in project cayenne by apache.
the class ReturnTypesMappingIT method testCLOB.
@Test
public void testCLOB() throws Exception {
if (unitDbAdapter.supportsLobs()) {
String columnName = "CLOB_COLUMN";
ReturnTypesMapLobs1 test = context.newObject(ReturnTypesMapLobs1.class);
StringBuffer buffer = new StringBuffer();
for (int i = 0; i < 10000; i++) {
buffer.append("CLOB very large string for tests!!!!\n");
}
String clobValue = buffer.toString();
test.setClobColumn(clobValue);
context.commitChanges();
DataRow testRead = (DataRow) context.performQuery(MappedSelect.query("SelectReturnTypesLobsMap1")).get(0);
Object columnValue = testRead.get(columnName);
if (columnValue == null && testRead.containsKey(columnName.toLowerCase())) {
columnValue = testRead.get(columnName.toLowerCase());
}
assertNotNull(columnValue);
assertEquals(String.class, columnValue.getClass());
assertEquals(clobValue, columnValue);
}
}
use of org.apache.cayenne.DataRow in project cayenne by apache.
the class ReturnTypesMappingIT method testBIT.
@Test
public void testBIT() throws Exception {
String columnName = "BIT_COLUMN";
ReturnTypesMap1 test = context.newObject(ReturnTypesMap1.class);
Boolean bitValue = true;
test.setBitColumn(bitValue);
context.commitChanges();
DataRow testRead = (DataRow) context.performQuery(MappedSelect.query("SelectReturnTypesMap1")).get(0);
Object columnValue = testRead.get(columnName);
assertNotNull(columnValue);
assertTrue(Boolean.class.equals(columnValue.getClass()) || Short.class.equals(columnValue.getClass()) || Integer.class.equals(columnValue.getClass()));
assertTrue(bitValue.equals(columnValue) || ((Number) columnValue).intValue() == 1);
}
use of org.apache.cayenne.DataRow in project cayenne by apache.
the class ReturnTypesMappingIT method testNCLOB.
@Test
public void testNCLOB() throws Exception {
if (unitDbAdapter.supportsLobs()) {
String columnName = "NCLOB_COLUMN";
ReturnTypesMapLobs1 test = context.newObject(ReturnTypesMapLobs1.class);
StringBuilder buffer = new StringBuilder();
for (int i = 0; i < 1000; i++) {
buffer.append("رودالف بیر و دد مککرِیت درخت بی را زمانی که در شرکت بوئینگ [۱]، مشغول به کار بودند ابداع نمودند، اما حرف B واقعاً\" از کجا آمده؟ داگلاس کامر یک سری از احتمالات را پیشنهاد کرد:\n" + "\"Balanced,\" \"Broad,\" یا \"Bushy\" ممکن است استفاده شدهباشند [چون همهٔ برگها در یک سطح قرار دارند]. دیگران اظهار داشتند که حرف \"B\" از کلمهٔ بوئینگ گرفته شده است [به این دلیل که پدیدآوردنده درسال 1972 در آزمایشگاههای تحقیقاتی علمی شرکت بوئینگ کار میکرد]. با این وجود پنداشتن درخت بی به عنوان درخت \"بِیِر\" نیز درخور است.[۲]");
}
String clobValue = buffer.toString();
test.setNclobColumn(clobValue);
context.commitChanges();
DataRow testRead = (DataRow) context.performQuery(MappedSelect.query("SelectReturnTypesLobsMap1")).get(0);
Object columnValue = testRead.get(columnName);
if (columnValue == null && testRead.containsKey(columnName.toLowerCase())) {
columnValue = testRead.get(columnName.toLowerCase());
}
assertNotNull(columnValue);
assertEquals(String.class, columnValue.getClass());
assertEquals(clobValue, columnValue);
}
}
use of org.apache.cayenne.DataRow in project cayenne by apache.
the class ReturnTypesMappingIT method testNUMERIC.
@Test
public void testNUMERIC() throws Exception {
String columnName = "NUMERIC_COLUMN";
ReturnTypesMap1 test = context.newObject(ReturnTypesMap1.class);
BigDecimal numericValue = new BigDecimal("578438.57843");
test.setNumericColumn(numericValue);
context.commitChanges();
DataRow testRead = (DataRow) context.performQuery(MappedSelect.query("SelectReturnTypesMap1")).get(0);
Object columnValue = testRead.get(columnName);
assertNotNull(columnValue);
assertEquals(BigDecimal.class, columnValue.getClass());
assertEquals(numericValue, columnValue);
}
use of org.apache.cayenne.DataRow in project cayenne by apache.
the class ReturnTypesMappingIT method testDOUBLE.
@Test
public void testDOUBLE() throws Exception {
String columnName = "DOUBLE_COLUMN";
ReturnTypesMap1 test = context.newObject(ReturnTypesMap1.class);
Double doubleValue = 3298.4349783d;
test.setDoubleColumn(doubleValue);
context.commitChanges();
DataRow testRead = (DataRow) context.performQuery(MappedSelect.query("SelectReturnTypesMap1")).get(0);
Object columnValue = testRead.get(columnName);
assertNotNull(columnValue);
if (unitDbAdapter.onlyGenericNumberType()) {
assertEquals(BigDecimal.class, columnValue.getClass());
assertEquals(BigDecimal.valueOf(doubleValue), columnValue);
} else {
assertEquals(Double.class, columnValue.getClass());
assertEquals(doubleValue, columnValue);
}
}
Aggregations