Package com.github.jknack.antlr4ide.lang

Examples of com.github.jknack.antlr4ide.lang.Grammar


    EList<Rule> rules = new BasicEList<Rule>();
    EList<EObject> ruleBodyList = new BasicEList<EObject>();

    String localsBody = "{\n$ctx.tree;\n}";

    Grammar grammar = createMock(Grammar.class);
    ParserRule rule1 = createMock(ParserRule.class);
    Return returns = createMock(Return.class);
    LocalVars locals = createMock(LocalVars.class);
    RuleBlock ruleBody = createMock(RuleBlock.class);
    ActionElement actionElement = createMock(ActionElement.class);

    expect(grammar.getRules()).andReturn(rules);

    expect(rule1.getArgs()).andReturn(null);
    expect(rule1.getReturn()).andReturn(returns);
    expect(rule1.getLocals()).andReturn(locals);
    expect(rule1.getBody()).andReturn(ruleBody).times(2);
View Full Code Here


  @Test
  public void ruleRefAttributeIsOK() throws Exception {
    EList<Rule> rules = new BasicEList<Rule>();
    EList<EObject> ruleBodyList = new BasicEList<EObject>();

    Grammar grammar = createMock(Grammar.class);
    ParserRule rule1 = createMock(ParserRule.class);
    Return returns = createMock(Return.class);
    LocalVars locals = createMock(LocalVars.class);
    RuleBlock ruleBody = createMock(RuleBlock.class);
    RuleRef ruleRef = createMock(RuleRef.class);
    ParserRule expr = createMock(ParserRule.class);
    ActionElement actionElement = createMock(ActionElement.class);
    Antlr4Validator validator = PowerMock.createPartialMock(Antlr4Validator.class, "error");

    expect(grammar.getRules()).andReturn(rules);

    expect(rule1.getArgs()).andReturn(null);
    expect(rule1.getReturn()).andReturn(returns);
    expect(rule1.getLocals()).andReturn(locals);
    expect(rule1.getBody()).andReturn(ruleBody).times(2);
View Full Code Here

  @Test
  public void ruleRefAttributeIsMissing() throws Exception {
    EList<Rule> rules = new BasicEList<Rule>();
    EList<EObject> ruleBodyList = new BasicEList<EObject>();

    Grammar grammar = createMock(Grammar.class);
    ParserRule rule1 = createMock(ParserRule.class);
    Return returns = createMock(Return.class);
    LocalVars locals = createMock(LocalVars.class);
    RuleBlock ruleBody = createMock(RuleBlock.class);
    ActionElement actionElement = createMock(ActionElement.class);
    Antlr4Validator validator = PowerMock.createPartialMock(Antlr4Validator.class, "error");

    expect(grammar.getRules()).andReturn(rules);

    expect(rule1.getArgs()).andReturn(null);
    expect(rule1.getReturn()).andReturn(returns);
    expect(rule1.getLocals()).andReturn(locals);
    expect(rule1.getBody()).andReturn(ruleBody).times(2);
View Full Code Here

  @Test
  public void checkEmptyGrammar() throws Exception {
    EList<Rule> rules = new BasicEList<Rule>();

    Grammar grammar = createMock(Grammar.class);
    EClass eClass = createMock(EClass.class);
    EStructuralFeature feature = createMock(EStructuralFeature.class);
    Antlr4Validator validator = PowerMock.createPartialMock(Antlr4Validator.class, "error");

    expect(grammar.getType()).andReturn(GrammarType.DEFAULT);
    expect(grammar.getRules()).andReturn(rules);
    expect(grammar.getName()).andReturn("G");
    expect(grammar.eClass()).andReturn(eClass);
    expect(eClass.getEStructuralFeature("name")).andReturn(feature);

    PowerMock.expectPrivate(validator, "error", "grammar 'G' has no rules",
        grammar, feature);
View Full Code Here

  @Test
  public void checkEmptyGrammarWithLexerRules() throws Exception {
    EList<Rule> rules = new BasicEList<Rule>();

    Grammar grammar = createMock(Grammar.class);
    Rule rule = createMock(LexerRule.class);
    EClass eClass = createMock(EClass.class);
    EStructuralFeature feature = createMock(EStructuralFeature.class);
    Antlr4Validator validator = PowerMock.createPartialMock(Antlr4Validator.class, "error");

    expect(grammar.getType()).andReturn(GrammarType.DEFAULT);
    expect(grammar.getRules()).andReturn(rules);
    expect(grammar.getName()).andReturn("G");
    expect(grammar.eClass()).andReturn(eClass);
    expect(eClass.getEStructuralFeature("name")).andReturn(feature);

    PowerMock.expectPrivate(validator, "error", "grammar 'G' has no rules",
        grammar, feature);
View Full Code Here

    verify(mocks);
  }

  @Test
  public void emptyTokens() throws Exception {
    Grammar grammar = createMock(Grammar.class);
    EmptyTokens tokens = createMock(EmptyTokens.class);

    expect(tokens.eContainer()).andReturn(grammar);

    expect(grammar.getName()).andReturn("G");

    Antlr4Validator validator = PowerMock.createPartialMock(Antlr4Validator.class, "warning");

    PowerMock
        .expectPrivate(
View Full Code Here

  }

  @Test
  public void labelNameConflict() throws Exception {
    EList<Rule> rules = new BasicEList<Rule>();
    Grammar grammar = createMock(Grammar.class);
    LabeledAlt label = createMock(LabeledAlt.class);
    Rule rule = createMock(ParserRule.class);
    EClass eClass = createMock(EClass.class);
    EStructuralFeature feature = createMock(EStructuralFeature.class);

    expect(label.eContainer()).andReturn(grammar);
    expect(label.getLabel()).andReturn("div");
    expect(label.eClass()).andReturn(eClass);

    expect(grammar.getRules()).andReturn(rules);
    expect(grammar.eContainer()).andReturn(null);

    expect(rule.getName()).andReturn("div");

    expect(eClass.getEStructuralFeature("label")).andReturn(feature);
View Full Code Here

  }

  @Test
  public void badImport() {
    ILinkingDiagnosticContext diagnosticContext = createMock(ILinkingDiagnosticContext.class);
    Grammar grammar = createMock(Grammar.class);
    Import delegate = createMock(Import.class);
    Resource resource = createMock(Resource.class);
    URI uri = createMock(URI.class);
    String name = "G.g4";

    expect(diagnosticContext.getLinkText()).andReturn("some");
    expect(diagnosticContext.getContext()).andReturn(delegate);

    expect(delegate.eContainer()).andReturn(null).times(2);

    expect(delegate.eContainer()).andReturn(grammar);

    expect(grammar.eContainer()).andReturn(null);
    expect(grammar.eResource()).andReturn(resource);

    expect(resource.getURI()).andReturn(uri);

    expect(uri.lastSegment()).andReturn(name);
View Full Code Here

  @Test
  public void checkGrammarName() throws Exception {
    URI uri = URI.createURI("/home/project/G.g4");

    Grammar grammar = createMock(Grammar.class);
    Resource resource = createMock(Resource.class);
    Antlr4Validator validator = PowerMock.createPartialMock(Antlr4Validator.class, "error");

    expect(grammar.eResource()).andReturn(resource);
    expect(grammar.getName()).andReturn("H");
    expect(resource.getURI()).andReturn(uri);

    PowerMock.expectPrivate(validator, "error", "grammar name 'H' and file name 'G.g4' differ",
        LangPackage.Literals.GRAMMAR__NAME, Antlr4Validator.GRAMMAR_NAME_DIFFER, "H", "G");
View Full Code Here

  }

  @Test
  public void checkTreeGrammar() throws Exception {

    Grammar grammar = createMock(Grammar.class);
    EClass eClass = createMock(EClass.class);
    EStructuralFeature feature = createMock(EStructuralFeature.class);
    Antlr4Validator validator = PowerMock.createPartialMock(Antlr4Validator.class, "error");

    expect(grammar.getType()).andReturn(GrammarType.TREE);
    expect(grammar.eClass()).andReturn(eClass);
    expect(eClass.getEStructuralFeature("name")).andReturn(feature);

    PowerMock.expectPrivate(validator, "error", "tree grammars are not supported in ANTLR 4",
        grammar, feature);
View Full Code Here

TOP

Related Classes of com.github.jknack.antlr4ide.lang.Grammar

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.