paul-rogers commented on a change in pull request #1618: DRILL-6950: Row set-based scan framework URL: https://github.com/apache/drill/pull/1618#discussion_r259597862
########## File path: exec/java-exec/src/test/java/org/apache/drill/exec/store/easy/text/compliant/TestCsv.java ########## @@ -151,12 +151,77 @@ private String makeStatement(String fileName) { return "SELECT * FROM `dfs.data`.`" + fileName + "`"; } - private void buildFile(String fileName, String[] data) throws IOException { + private static void buildFile(String fileName, String[] data) throws IOException { try(PrintWriter out = new PrintWriter(new FileWriter(new File(testDir, fileName)))) { for (String line : data) { out.println(line); } } } + /** + * Verify that the wildcard expands columns to the header names, including + * case + */ + @Test + public void testWildcard() throws IOException { + String sql = "SELECT * FROM `dfs.data`.`%s`"; + RowSet actual = client.queryBuilder().sql(sql, CASE2_FILE_NAME).rowSet(); + + BatchSchema expectedSchema = new SchemaBuilder() + .add("a", MinorType.VARCHAR) + .add("b", MinorType.VARCHAR) + .add("c", MinorType.VARCHAR) + .build(); + assertTrue(expectedSchema.isEquivalent(actual.batchSchema())); + + RowSet expected = new RowSetBuilder(client.allocator(), expectedSchema) + .addRow("10", "foo", "bar") + .build(); + RowSetUtilities.verify(expected, actual); + } + + /** + * Verify that implicit columns are recognized and populated. Sanity test + * of just one implicit column. + */ + @Test + public void testImplicitColsExplicitSelect() throws IOException { + String sql = "SELECT A, filename FROM `dfs.data`.`%s`"; + RowSet actual = client.queryBuilder().sql(sql, CASE2_FILE_NAME).rowSet(); + + BatchSchema expectedSchema = new SchemaBuilder() + .add("A", MinorType.VARCHAR) + .addNullable("filename", MinorType.VARCHAR) Review comment: Also, added two new tests to test the partition columns (dir0, etc.) Turns out that, for CSV, when using the cp storage plugin, the partition columns are undefined, and so their type is Nullable INT. Not sure if this is a bug (we can fix) or a feature (that we must preserve). ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services