|
From: <caw...@us...> - 2007-04-02 14:01:23
|
Revision: 2259
http://svn.sourceforge.net/rubyeclipse/?rev=2259&view=rev
Author: cawilliams
Date: 2007-04-02 07:01:22 -0700 (Mon, 02 Apr 2007)
Log Message:
-----------
add test and fix for alias syntax (second symbol wasn't getting colored as a symbol). This highlights a strange JRuby inconsistency, the second symbol's beginning returns the colon character, whereas all other symbols beginnings return Tokens.SYMBEG
Modified Paths:
--------------
trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyTokenScanner.java
trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/ruby/TC_RubyTokenScanner.java
Modified: trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyTokenScanner.java
===================================================================
--- trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyTokenScanner.java 2007-04-02 13:40:35 UTC (rev 2258)
+++ trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyTokenScanner.java 2007-04-02 14:01:22 UTC (rev 2259)
@@ -189,6 +189,7 @@
return doGetToken(IRubyColorConstants.RUBY_KEYWORD);
switch (i) {
case Tokens.tSYMBEG:
+ case 58: // ':' FIXME JRuby returns the number for ':' on second symbol's beginning in alias calls
isInSymbol = true;
return doGetToken(IRubyColorConstants.RUBY_SYMBOL);
case Tokens.tGVAR:
Modified: trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/ruby/TC_RubyTokenScanner.java
===================================================================
--- trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/ruby/TC_RubyTokenScanner.java 2007-04-02 13:40:35 UTC (rev 2258)
+++ trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/ruby/TC_RubyTokenScanner.java 2007-04-02 14:01:22 UTC (rev 2259)
@@ -88,9 +88,9 @@
setUpScanner(code);
assertToken(IRubyColorConstants.RUBY_DEFAULT, 0, 4); // 'hash'
assertToken(IRubyColorConstants.RUBY_DEFAULT, 4, 2); // ' ='
- assertToken(IRubyColorConstants.RUBY_DEFAULT, 6, 2); // ' {'
- assertToken(IRubyColorConstants.RUBY_DEFAULT, 8, 4); // whitespace
+ assertToken(IRubyColorConstants.RUBY_DEFAULT, 6, 2); // ' {'
+ assertToken(IRubyColorConstants.RUBY_STRING, 8, 4); // whitespace
assertToken(IRubyColorConstants.RUBY_STRING, 12, 6);
assertToken(IRubyColorConstants.RUBY_STRING, 18, 1);
@@ -157,6 +157,14 @@
assertToken(IRubyColorConstants.RUBY_SYMBOL, 23, 8); // 'RedCloth'
assertToken(IRubyColorConstants.RUBY_DEFAULT, 31, 1); // ')'
}
-
+ public void testAliasWithTwoSymbols() {
+ String code = "alias :tsort_each_child :each_key";
+ setUpScanner(code);
+ assertToken(IRubyColorConstants.RUBY_KEYWORD, 0, 5); // 'alias'
+ assertToken(IRubyColorConstants.RUBY_SYMBOL, 5, 2); // ' :'
+ assertToken(IRubyColorConstants.RUBY_SYMBOL, 7, 16); // 'tsort_each_child'
+ assertToken(IRubyColorConstants.RUBY_SYMBOL, 23, 2); // ' :'
+ assertToken(IRubyColorConstants.RUBY_SYMBOL, 25, 8); // 'each_key'
+ }
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|