PY-23884 ReST :kbd: Markup is Not Highlighted Correctly

This commit is contained in:
Ekaterina Tuzova
2017-07-10 13:40:47 +03:00
parent fcbffb4d81
commit 39b63dafce
3 changed files with 14585 additions and 14544 deletions
@@ -5,7 +5,6 @@ import com.jetbrains.rest.lexer._RestFlexLexer;
import junit.framework.TestCase;
import java.io.IOException;
import java.io.Reader;
/**
* User : catherine
@@ -26,7 +25,7 @@ public class RestLexerTest extends TestCase {
"[Quick start guide\n" +
"=================\n" +
", TITLE]"
);
);
}
public void testDirective() throws IOException {
@@ -35,35 +34,35 @@ public class RestLexerTest extends TestCase {
" Please",
"[\n, WHITESPACE]",
"[.. , EXPLISIT_MARKUP_START]",
"[note::, DIRECTIVE]",
"[\n, WHITESPACE]",
"[ , WHITESPACE]",
"[Please, LINE]"
);
"[note::, DIRECTIVE]",
"[\n, WHITESPACE]",
"[ , WHITESPACE]",
"[Please, LINE]"
);
}
public void testSubstitution() throws IOException {
doTest(".. |grappelli| replace:: Grappelli",
"[.. , EXPLISIT_MARKUP_START]",
"[|grappelli|, SUBSTITUTION]",
"[ , WHITESPACE]",
"[replace::, DIRECTIVE]",
"[ Grappelli, LINE]"
);
"[|grappelli|, SUBSTITUTION]",
"[ , WHITESPACE]",
"[replace::, DIRECTIVE]",
"[ Grappelli, LINE]"
);
}
public void testField() throws IOException {
doTest(".. figure:: image.png\n" +
" :width: 300pt",
"[.. , EXPLISIT_MARKUP_START]",
"[figure::, DIRECTIVE]",
"[ image.png, LINE]",
"[\n, WHITESPACE]",
"[ , WHITESPACE]",
"[:width:, FIELD]",
"[ , LINE]",
"[300pt, LINE]"
);
"[figure::, DIRECTIVE]",
"[ image.png, LINE]",
"[\n, WHITESPACE]",
"[ , WHITESPACE]",
"[:width:, FIELD]",
"[ , LINE]",
"[300pt, LINE]"
);
}
public void testRole() throws IOException { //PY-3810
@@ -73,54 +72,113 @@ public class RestLexerTest extends TestCase {
"[ , LINE]",
"[role, LINE]",
"[ , LINE]",
"[:roole1:, FIELD]",
"[`some text`, INTERPRETED]",
"[ , LINE]",
"[:, LINE]",
"[notparsed, LINE]",
"[:, LINE]",
"[ , LINE]",
"[text, LINE]",
"[\n, WHITESPACE]",
"[:list field:, FIELD]",
"[\n, WHITESPACE]",
"[ , LINE]",
"[:second field:, FIELD]",
"[\n, WHITESPACE]"
);
"[:roole1:, FIELD]",
"[`some text`, INTERPRETED]",
"[ , LINE]",
"[:, LINE]",
"[notparsed, LINE]",
"[:, LINE]",
"[ , LINE]",
"[text, LINE]",
"[\n, WHITESPACE]",
"[:list field:, FIELD]",
"[\n, WHITESPACE]",
"[ , LINE]",
"[:second field:, FIELD]",
"[\n, WHITESPACE]"
);
}
public void testFootnote() throws IOException {
doTest(".. [2] Random",
"[.. , EXPLISIT_MARKUP_START]",
"[[2], FOOTNOTE]",
"[ , LINE]",
"[Random, LINE]"
);
"[[2], FOOTNOTE]",
"[ , LINE]",
"[Random, LINE]"
);
}
public void testHyperlink() throws IOException {
doTest(".. _`dvipng`: http://savannah.nongnu.org/projects/dvipng/",
"[.. , EXPLISIT_MARKUP_START]",
"[_`dvipng`:, HYPERLINK]",
"[ , LINE]",
"[http://savannah.nongnu.org/projects/dvipng/, DIRECT_HYPERLINK]"
);
"[_`dvipng`:, HYPERLINK]",
"[ , LINE]",
"[http://savannah.nongnu.org/projects/dvipng/, DIRECT_HYPERLINK]"
);
}
public void testItalics() throws IOException {
doTest("*italics* highlighting",
"[*italics*, ITALIC]",
"[ , LINE]",
"[highlighting, LINE]"
);
"[*italics*, ITALIC]",
"[ , LINE]",
"[highlighting, LINE]"
);
}
public void testBold() throws IOException {
doTest("**bold** highlighting",
"[**bold**, BOLD]",
"[ , LINE]",
"[highlighting, LINE]"
"[**bold**, BOLD]",
"[ , LINE]",
"[highlighting, LINE]"
);
}
public void testInterpreted() throws IOException {
doTest(":kbd:`1`\n" +
"\n" +
":kbd:`a`\n" +
"\n" +
":kbd:`*`\n" +
"\n" +
":kbd:`12`\n" +
"\n" +
":kbd:`ab`\n" +
"\n" +
":kbd:`**`\n" +
"\n" +
":kbd:`1`, :kbd:`2`",
"[:kbd:, FIELD]",
"[`1`, INTERPRETED]",
"[\n" +
", WHITESPACE]",
"[\n" +
", WHITESPACE]",
"[:kbd:, FIELD]",
"[`a`, INTERPRETED]",
"[\n" +
", WHITESPACE]",
"[\n" +
", WHITESPACE]",
"[:kbd:, FIELD]",
"[`*`, INTERPRETED]",
"[\n" +
", WHITESPACE]",
"[\n" +
", WHITESPACE]",
"[:kbd:, FIELD]",
"[`12`, INTERPRETED]",
"[\n" +
", WHITESPACE]",
"[\n" +
", WHITESPACE]",
"[:kbd:, FIELD]",
"[`ab`, INTERPRETED]",
"[\n" +
", WHITESPACE]",
"[\n" +
", WHITESPACE]",
"[:kbd:, FIELD]",
"[`**`, INTERPRETED]",
"[\n" +
", WHITESPACE]",
"[\n" +
", WHITESPACE]",
"[:kbd:, FIELD]",
"[`1`, INTERPRETED]",
"[,, LINE]",
"[ , LINE]",
"[:kbd:, FIELD]",
"[`2`, INTERPRETED]"
);
}
@@ -137,7 +195,7 @@ public class RestLexerTest extends TestCase {
}
public static _RestFlexLexer createLexer(String text) {
_RestFlexLexer lexer = new _RestFlexLexer((Reader)null);
_RestFlexLexer lexer = new _RestFlexLexer(null);
lexer.reset(text, 0, text.length(), _RestFlexLexer.YYINITIAL);
return lexer;
}