1 19 20 package org.netbeans.lib.jsp.lexer; 21 22 import java.io.File ; 23 import java.io.IOException ; 24 import javax.swing.text.BadLocationException ; 25 import org.netbeans.api.jsp.lexer.JspTokenId; 26 import org.netbeans.api.lexer.Token; 27 import org.netbeans.api.lexer.TokenHierarchy; 28 import org.netbeans.api.lexer.TokenSequence; 29 import org.netbeans.junit.NbTestCase; 30 31 32 36 public class JspLexerTest extends NbTestCase { 37 38 public JspLexerTest() { 39 super("JspLexerTest"); 40 } 41 42 private CharSequence readFile(String fileName) throws IOException { 43 File inputFile = new File (getDataDir(), fileName); 44 return Utils.readFileContentToString(inputFile); 45 } 46 47 private static String getTokenInfo(Token token, TokenHierarchy tokenHierarchy) { 48 return "TOKEN[text=\"" + token.text() + "\"; tokenId=" + token.id().name() + "; offset=" + token.offset(tokenHierarchy) + "]"; 49 } 50 51 private void dumpTokens(CharSequence charSequence) { 52 TokenHierarchy tokenHierarchy = TokenHierarchy.create(charSequence, JspTokenId.language()); 53 TokenSequence tokenSequence = tokenHierarchy.tokenSequence(); 54 tokenSequence.moveFirst(); 55 do { 56 getRef().println(getTokenInfo(tokenSequence.token(), tokenHierarchy)); 57 } while (tokenSequence.moveNext()); 58 } 59 60 62 public void testComplexJSP() throws BadLocationException , IOException { 63 dumpTokens(readFile("input/JspLexerTest/testComplexJSP.jsp")); 64 compareReferenceFiles(); 65 } 66 67 68 } 69 | Popular Tags |