@After public void tearDown() throws IOException { out.close(); if (tajoCli != null) { tajoCli.close(); } }
@Test public void testParseConf() throws Exception { String[] args = new String[] { "--conf", "tajo.cli.print.pause=false", "--conf", "tajo.executor.join.inner.in-memory-table-num=256" }; CommandLineParser parser = new PosixParser(); CommandLine cmd = parser.parse(TajoCli.options, args); String[] confValues = cmd.getOptionValues("conf"); assertNotNull(confValues); assertEquals(2, confValues.length); assertEquals("tajo.cli.print.pause=false", confValues[0]); assertEquals("tajo.executor.join.inner.in-memory-table-num=256", confValues[1]); TajoConf tajoConf = TpchTestBase.getInstance().getTestingCluster().getConfiguration(); TajoCli testCli = new TajoCli(tajoConf, args, System.in, System.out); try { assertEquals("false", testCli.getContext().get(SessionVars.CLI_PAGING_ENABLED)); assertEquals( "256", testCli.getContext().getConf().get("tajo.executor.join.inner.in-memory-table-num")); } finally { testCli.close(); } }
@AfterClass public static void tearDown() throws IOException { out.close(); err.close(); if (tajoCli != null) { tajoCli.close(); } }
@Test public void testShowMasters() throws Exception { TajoConf tajoConf = TpchTestBase.getInstance().getTestingCluster().getConfiguration(); setVar(tajoCli, SessionVars.CLI_FORMATTER_CLASS, TajoCliOutputTestFormatter.class.getName()); ByteArrayOutputStream out = new ByteArrayOutputStream(); TajoCli tajoCli = new TajoCli(tajoConf, new String[] {}, System.in, out); tajoCli.executeMetaCommand("\\admin -showmasters"); String consoleResult = new String(out.toByteArray()); String masterAddress = tajoCli.getContext().getConf().getVar(TajoConf.ConfVars.TAJO_MASTER_UMBILICAL_RPC_ADDRESS); String host = masterAddress.split(":")[0]; tajoCli.close(); assertEquals(consoleResult, host + "\n"); }
@Test public void testGetConf() throws Exception { TajoConf tajoConf = TpchTestBase.getInstance().getTestingCluster().getConfiguration(); setVar(tajoCli, SessionVars.CLI_FORMATTER_CLASS, TajoCliOutputTestFormatter.class.getName()); ByteArrayOutputStream out = new ByteArrayOutputStream(); TajoCli tajoCli = new TajoCli(tajoConf, new String[] {}, System.in, out); try { tajoCli.executeMetaCommand("\\getconf tajo.rootdir"); String consoleResult = new String(out.toByteArray()); assertEquals( consoleResult, tajoCli.getContext().getConf().getVar(TajoConf.ConfVars.ROOT_DIR) + "\n"); } finally { tajoCli.close(); } }
@Test(timeout = 3000) public void testNonForwardQueryPause() throws Exception { final String sql = "select * from default.lineitem"; TajoCli cli = null; try { TableDesc tableDesc = cluster.getMaster().getCatalog().getTableDesc("default", "lineitem"); assertNotNull(tableDesc); assertEquals(0L, tableDesc.getStats().getNumRows().longValue()); InputStream testInput = new ByteArrayInputStream(new byte[] {(byte) DefaultTajoCliOutputFormatter.QUIT_COMMAND}); cli = new TajoCli(cluster.getConfiguration(), new String[] {}, testInput, out); setVar(cli, SessionVars.CLI_PAGE_ROWS, "2"); setVar(cli, SessionVars.CLI_FORMATTER_CLASS, TajoCliOutputTestFormatter.class.getName()); cli.executeScript(sql); String consoleResult; consoleResult = new String(out.toByteArray()); assertOutputResult(consoleResult); } finally { cli.close(); } }