Repository: calcite Updated Branches: refs/heads/master ba9783f30 -> 3e25f2ffa
[CALCITE-835] Unit test for unicode column names Project: http://git-wip-us.apache.org/repos/asf/calcite/repo Commit: http://git-wip-us.apache.org/repos/asf/calcite/commit/4140927c Tree: http://git-wip-us.apache.org/repos/asf/calcite/tree/4140927c Diff: http://git-wip-us.apache.org/repos/asf/calcite/diff/4140927c Branch: refs/heads/master Commit: 4140927c99b9dceb15ef4b85059b60e7898de0e7 Parents: ba9783f Author: Josh Elser <[email protected]> Authored: Tue Mar 29 22:45:44 2016 -0400 Committer: Josh Elser <[email protected]> Committed: Tue Mar 29 22:45:44 2016 -0400 ---------------------------------------------------------------------- .../calcite/avatica/RemoteDriverTest.java | 21 ++++++++++++++++++++ 1 file changed, 21 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/calcite/blob/4140927c/avatica/server/src/test/java/org/apache/calcite/avatica/RemoteDriverTest.java ---------------------------------------------------------------------- diff --git a/avatica/server/src/test/java/org/apache/calcite/avatica/RemoteDriverTest.java b/avatica/server/src/test/java/org/apache/calcite/avatica/RemoteDriverTest.java index 9f37db5..50223b2 100644 --- a/avatica/server/src/test/java/org/apache/calcite/avatica/RemoteDriverTest.java +++ b/avatica/server/src/test/java/org/apache/calcite/avatica/RemoteDriverTest.java @@ -1455,6 +1455,27 @@ public class RemoteDriverTest { } } + @Test public void testUnicodeColumnNames() throws Exception { + final String tableName = "unicodeColumn"; + final String columnName = "ÐомеÑТелеÑона"; // PhoneNumber in Russian + ConnectionSpec.getDatabaseLock().lock(); + try (Connection conn = getLocalConnection(); + Statement stmt = conn.createStatement()) { + assertFalse(stmt.execute("DROP TABLE IF EXISTS " + tableName)); + final String sql = "CREATE TABLE " + tableName + "(" + columnName + " integer)"; + assertFalse(stmt.execute(sql)); + final ResultSet results = stmt.executeQuery("SELECT * FROM " + tableName); + assertNotNull(results); + ResultSetMetaData metadata = results.getMetaData(); + assertNotNull(metadata); + String actualColumnName = metadata.getColumnName(1); + // HSQLDB is going to upper-case the column name + assertEquals(columnName.toUpperCase(), actualColumnName); + } finally { + ConnectionSpec.getDatabaseLock().unlock(); + } + } + /** * Factory that creates a service based on a local JDBC connection. */
