Search in sources :

Example 36 with Function

use of org.teiid.language.Function in project teiid by teiid.

the class TestSybaseConvertModifier method testBooleanToStringa.

/**
 ******************END of cast(timestamp AS INPUT) *****************
 */
/**
 ***************Beginning of cast(string AS input)*****************
 */
@Test
public void testBooleanToStringa() throws Exception {
    Function func = // $NON-NLS-1$
    LANG_FACTORY.createFunction(// $NON-NLS-1$
    "convert", new Expression[] { LANG_FACTORY.createLiteral(Boolean.TRUE, Boolean.class), // $NON-NLS-1$
    LANG_FACTORY.createLiteral("string", String.class) }, String.class);
    // $NON-NLS-1$
    helpGetString1(func, "CASE WHEN 1 = 0 THEN 'false' ELSE 'true' END");
}
Also used : Function(org.teiid.language.Function) Test(org.junit.Test)

Example 37 with Function

use of org.teiid.language.Function in project teiid by teiid.

the class TestSybaseConvertModifier method testLongToShort.

@Test
public void testLongToShort() throws Exception {
    Function func = // $NON-NLS-1$
    LANG_FACTORY.createFunction(// $NON-NLS-1$
    "convert", new Expression[] { LANG_FACTORY.createLiteral(new Long(1231232341), Long.class), // $NON-NLS-1$
    LANG_FACTORY.createLiteral("short", Short.class) }, Short.class);
    // $NON-NLS-1$
    helpGetString1(func, "cast(1231232341 AS smallint)");
}
Also used : Function(org.teiid.language.Function) Test(org.junit.Test)

Example 38 with Function

use of org.teiid.language.Function in project teiid by teiid.

the class TestSybaseConvertModifier method testStringToFloat.

/**
 *************** End of cast(biginteger AS input)*****************
 */
/**
 *************** Beginning of cast(float AS input) ***********
 */
@Test
public void testStringToFloat() throws Exception {
    Function func = // $NON-NLS-1$
    LANG_FACTORY.createFunction(// $NON-NLS-1$
    "convert", new Expression[] { // $NON-NLS-1$
    LANG_FACTORY.createLiteral("123", String.class), // $NON-NLS-1$
    LANG_FACTORY.createLiteral("float", Float.class) }, Float.class);
    // $NON-NLS-1$
    helpGetString1(func, "cast('123' AS real)");
}
Also used : Function(org.teiid.language.Function) Test(org.junit.Test)

Example 39 with Function

use of org.teiid.language.Function in project teiid by teiid.

the class TestSybaseConvertModifier method helpTest.

public void helpTest(Expression srcExpression, String tgtType, String expectedExpression) throws Exception {
    Function func = // $NON-NLS-1$
    LANG_FACTORY.createFunction(// $NON-NLS-1$
    "convert", new Expression[] { srcExpression, LANG_FACTORY.createLiteral(tgtType, String.class) }, DataTypeManager.getDataTypeClass(tgtType));
    assertEquals(// $NON-NLS-1$ //$NON-NLS-2$
    "Error converting from " + DataTypeManager.getDataTypeName(srcExpression.getType()) + " to " + tgtType, expectedExpression, helpGetString(func));
}
Also used : Function(org.teiid.language.Function)

Example 40 with Function

use of org.teiid.language.Function in project teiid by teiid.

the class TestSybaseConvertModifier method testTimeToTimestamp.

@Test
public void testTimeToTimestamp() throws Exception {
    Function func = // $NON-NLS-1$
    LANG_FACTORY.createFunction(// $NON-NLS-1$
    "convert", new Expression[] { LANG_FACTORY.createLiteral(TimestampUtil.createTime(12, 2, 3), java.sql.Time.class), // $NON-NLS-1$
    LANG_FACTORY.createLiteral("timestamp", String.class) }, java.sql.Timestamp.class);
    // $NON-NLS-1$
    helpGetString1(func, "CAST('1970-01-01 12:02:03.0' AS DATETIME)");
}
Also used : Function(org.teiid.language.Function) Test(org.junit.Test)

Aggregations

Function (org.teiid.language.Function)173 Test (org.junit.Test)127 BigInteger (java.math.BigInteger)36 ArrayList (java.util.ArrayList)16 Literal (org.teiid.language.Literal)15 BigDecimal (java.math.BigDecimal)14 List (java.util.List)13 Expression (org.teiid.language.Expression)13 AliasModifier (org.teiid.translator.jdbc.AliasModifier)12 FunctionModifier (org.teiid.translator.jdbc.FunctionModifier)12 SQLConversionVisitor (org.teiid.translator.jdbc.SQLConversionVisitor)9 LinkedList (java.util.LinkedList)3 ColumnReference (org.teiid.language.ColumnReference)3 Comparison (org.teiid.language.Comparison)3 SearchedCase (org.teiid.language.SearchedCase)3 EscapeSyntaxModifier (org.teiid.translator.jdbc.EscapeSyntaxModifier)3 ModFunctionModifier (org.teiid.translator.jdbc.ModFunctionModifier)3 ConcatFunctionModifier (org.teiid.translator.jdbc.oracle.ConcatFunctionModifier)3 Timestamp (java.sql.Timestamp)2 AggregateFunction (org.teiid.language.AggregateFunction)2