From: SVN by r. <sv...@ca...> - 2009-12-08 10:19:12
|
Author: roy Date: 2009-12-08 11:18:57 +0100 (Tue, 08 Dec 2009) New Revision: 432 Modified: src/main/java/nl/improved/sqlclient/SQLUtil.java src/test/java/nl/improved/sqlclient/SQLUtilTest.java Log: small fixx Modified: src/main/java/nl/improved/sqlclient/SQLUtil.java =================================================================== --- src/main/java/nl/improved/sqlclient/SQLUtil.java 2009-12-08 10:14:51 UTC (rev 431) +++ src/main/java/nl/improved/sqlclient/SQLUtil.java 2009-12-08 10:18:57 UTC (rev 432) @@ -292,7 +292,16 @@ static List<String> getColumns(String columnsString) { int charOpenCount = 0; int roundOpenCount = 0; - List<String> result = new ArrayList<String>(); + List<String> result = new ArrayList<String>() { + + @Override + public boolean add(String e) { + if (e.toUpperCase().indexOf(" AS ") > 0) { + e = e.substring(0, e.toUpperCase().indexOf(" AS")).trim(); + } + return super.add(e); + } + }; StringBuffer tmp = new StringBuffer(); for (int i = 0; i < columnsString.length(); i++) { char c = columnsString.charAt(i); Modified: src/test/java/nl/improved/sqlclient/SQLUtilTest.java =================================================================== --- src/test/java/nl/improved/sqlclient/SQLUtilTest.java 2009-12-08 10:14:51 UTC (rev 431) +++ src/test/java/nl/improved/sqlclient/SQLUtilTest.java 2009-12-08 10:18:57 UTC (rev 432) @@ -449,6 +449,15 @@ matches = info.getPossibleMatches(); assertEquals(2, matches.size()); assertTrue(matches.toString(), matches.contains("to_char(datein, 'yyyymmdd')")); + + sqlCommand = Arrays.asList(new String[]{"SELECT c1 , to_char(datein, 'yyyymmdd') AS D FROM A,B WHERE a.b=b.b GROUP BY c1, "}); + cursorPos = new Point(sqlCommand.get(0).length(),0); + info = SQLUtil.getTabCompletionInfo(sqlCommand, cursorPos); + assertNotNull(info); + assertEquals(TabCompletionInfo.MatchType.COLUMN_NAMES, info.getMatchType()); + matches = info.getPossibleMatches(); + assertEquals(2, matches.size()); + assertTrue(matches.toString(), matches.contains("to_char(datein, 'yyyymmdd')")); } public void testOrderBy() { |