java/sql-dk/test/info/globalcode/sql/dk/CLIParserTest.java
branchv_0
changeset 10 f528406f33f4
parent 9 2ec52027b97f
child 11 2712ded000ef
--- a/java/sql-dk/test/info/globalcode/sql/dk/CLIParserTest.java	Sun Dec 15 23:58:58 2013 +0100
+++ b/java/sql-dk/test/info/globalcode/sql/dk/CLIParserTest.java	Mon Dec 16 00:05:30 2013 +0100
@@ -1,6 +1,7 @@
 package info.globalcode.sql.dk;
 
 import info.globalcode.sql.dk.CLIParser.Tokens;
+import java.sql.Types;
 import static org.testng.Assert.*;
 import org.testng.annotations.BeforeMethod;
 import org.testng.annotations.Test;
@@ -42,6 +43,28 @@
 	}
 
 	@Test
+	public void testParseOptions_QueryNow_Numbered_withTypes() throws InvalidOptionsException, CLIParserException {
+		String[] args = new String[]{
+			Tokens.DB, DATABASE_NAME_1,
+			Tokens.SQL, SQL_1,
+			Tokens.TYPES, " int,string, boolean",
+			Tokens.DATA, DATA_1, DATA_2, DATA_3};
+		CLIOptions options = parser.parseOptions(args);
+		options.validate();
+
+		assertEquals(options.getDatabaseName(), DATABASE_NAME_1);
+		assertEquals(options.getSql(), SQL_1);
+		assertEquals(options.getMode(), CLIOptions.MODE.QUERY_NOW);
+		assertEquals(options.getNumberedParameters().size(), 3);
+		assertEquals(options.getNumberedParameters().get(0).getValue(), DATA_1);
+		assertEquals(options.getNumberedParameters().get(1).getValue(), DATA_2);
+		assertEquals(options.getNumberedParameters().get(2).getValue(), DATA_3);
+		assertEquals(options.getNumberedParameters().get(0).getType(), Types.INTEGER);
+		assertEquals(options.getNumberedParameters().get(1).getType(), Types.VARCHAR);
+		assertEquals(options.getNumberedParameters().get(2).getType(), Types.BOOLEAN);
+	}
+
+	@Test
 	public void testParseOptions_QueryNow_Named() throws InvalidOptionsException, CLIParserException {
 		String[] args = new String[]{Tokens.DB, DATABASE_NAME_1, Tokens.SQL, SQL_1};
 		CLIOptions options = parser.parseOptions(args);