@Test public void testXmlSelect() throws Exception { String input = "SELECT col as x, col1 as y from test"; // $NON-NLS-1$ String output = "SELECT XMLSERIALIZE(test.col AS CLOB) AS x, test.col1 AS y FROM test"; //$NON-NLS-1$ TranslationHelper.helpTestVisitor( "create foreign table test (col xml, col1 integer);", input, output, TRANSLATOR); input = "SELECT * from test"; // $NON-NLS-1$ output = "SELECT XMLSERIALIZE(test.col AS CLOB), test.col1 FROM test"; // $NON-NLS-1$ TranslationHelper.helpTestVisitor( "create foreign table test (col xml, col1 integer);", input, output, TRANSLATOR); }
@Test public void testSelectWithNoFrom() throws Exception { String input = "select 1, 2"; // $NON-NLS-1$ String output = "VALUES(1, 2)"; // $NON-NLS-1$ TranslationHelper.helpTestVisitor(TranslationHelper.BQT_VDB, input, output, TRANSLATOR); }
@Test public void testConcat_useLiteral() throws Exception { String input = "select concat(stringnum,'_xx') from BQT1.Smalla"; // $NON-NLS-1$ String output = "SELECT {fn concat(SmallA.StringNum, '_xx')} FROM SmallA"; // $NON-NLS-1$ TranslationHelper.helpTestVisitor(TranslationHelper.BQT_VDB, input, output, TRANSLATOR); }
@Test public void testConcat2() throws Exception { String input = "select concat2(stringnum, stringnum) from BQT1.Smalla"; // $NON-NLS-1$ String output = "SELECT CASE WHEN SmallA.StringNum IS NULL AND SmallA.StringNum IS NULL THEN NULL ELSE {fn concat(coalesce(SmallA.StringNum, ''), coalesce(SmallA.StringNum, ''))} END FROM SmallA"; //$NON-NLS-1$ TranslationHelper.helpTestVisitor(TranslationHelper.BQT_VDB, input, output, TRANSLATOR); }
@Test public void testOffset() throws Exception { String input = "select intkey from bqt1.smalla limit 50, 100"; // $NON-NLS-1$ String output = "SELECT SmallA.IntKey FROM SmallA OFFSET 50 ROWS FETCH FIRST 100 ROWS ONLY"; //$NON-NLS-1$ TranslationHelper.helpTestVisitor(TranslationHelper.BQT_VDB, input, output, TRANSLATOR); }
@Test public void testTempTable() throws Exception { assertEquals( "declare global temporary table foo (COL1 integer, COL2 varchar(100)) not logged", TranslationHelper.helpTestTempTable(TRANSLATOR, true)); }