package org.intellij.grammar;
import com.intellij.lang.LanguageBraceMatching;
import org.jetbrains.annotations.NonNls;
import java.io.IOException;
/**
* @author gregsh
*/
public class BnfParserTest extends AbstractParsingTestCase {
public BnfParserTest() {
super("parser", "bnf", new BnfParserDefinition());
}
@Override
protected void setUp() throws Exception {
super.setUp();
addExplicitExtension(LanguageBraceMatching.INSTANCE, myLanguage, new BnfBraceMatcher());
}
public void testSelfBnf() { doTest(true); }
public void testSelfFlex() { doTest(true); }
public void testBrokenAttr() { doTest(true); }
public void testBrokenEverything() { doTest(true); }
public void testAlternativeSyntax() { doTest(true); }
public void testExternalExpression() { doTest(true); }
public void testFixes() { doTest(true); }
public void testBrokenAttrBeforeEOF() { doTest(true); }
@Override
protected String loadFile(@NonNls String name) throws IOException {
String adjusted;
if ("SelfBnf.bnf".equals(name)) adjusted = "../../grammars/Grammar.bnf";
else if ("SelfFlex.bnf".equals(name)) adjusted = "../../grammars/JFlex.bnf";
else adjusted = name;
return super.loadFile(adjusted);
}
}