Search in sources :

Example 71 with Issue

use of org.eclipse.xtext.validation.Issue in project xtext-core by eclipse.

the class XtextValidationTest method testExplicitOverride04.

@Test
public void testExplicitOverride04() throws Exception {
    IResourceValidator validator = get(IResourceValidator.class);
    XtextResource resource = getResourceFromString("grammar org.foo.Bar with org.eclipse.xtext.common.Terminals\n" + "@Override\n" + "terminal ID: ('a'..'z'|'A'..'Z'|'_');");
    List<Issue> issues = validator.validate(resource, CheckMode.FAST_ONLY, CancelIndicator.NullImpl);
    assertEquals(issues.toString(), 0, issues.size());
}
Also used : Issue(org.eclipse.xtext.validation.Issue) IResourceValidator(org.eclipse.xtext.validation.IResourceValidator) XtextResource(org.eclipse.xtext.resource.XtextResource) Test(org.junit.Test)

Example 72 with Issue

use of org.eclipse.xtext.validation.Issue in project xtext-core by eclipse.

the class XtextValidationTest method testDuplicateArgument.

@Test
public void testDuplicateArgument() throws Exception {
    XtextResource resource = getResourceFromString("grammar com.acme.Bar with org.eclipse.xtext.common.Terminals\n" + "generate metamodel 'myURI'\n" + "Model: rule=Rule<Single=true, Single=false>;\n" + "Rule<Single>: name=ID;");
    IResourceValidator validator = get(IResourceValidator.class);
    List<Issue> issues = validator.validate(resource, CheckMode.FAST_ONLY, CancelIndicator.NullImpl);
    assertEquals(issues.toString(), 1, issues.size());
    assertEquals("Duplicate value for parameter Single", issues.get(0).getMessage());
}
Also used : Issue(org.eclipse.xtext.validation.Issue) IResourceValidator(org.eclipse.xtext.validation.IResourceValidator) XtextResource(org.eclipse.xtext.resource.XtextResource) Test(org.junit.Test)

Example 73 with Issue

use of org.eclipse.xtext.validation.Issue in project xtext-core by eclipse.

the class XtextValidationTest method testMissingArgument3.

@Test
public void testMissingArgument3() throws Exception {
    XtextResource resource = getResourceFromString("grammar com.acme.Bar with org.eclipse.xtext.common.Terminals\n" + "generate metamodel 'myURI'\n" + "Model: rule=Rule<true>;\n" + "Rule<First, Missing, AlsoMissing>: name=ID;");
    IResourceValidator validator = get(IResourceValidator.class);
    List<Issue> issues = validator.validate(resource, CheckMode.FAST_ONLY, CancelIndicator.NullImpl);
    assertEquals(issues.toString(), 1, issues.size());
    assertEquals("Expected 3 arguments but got 1", issues.get(0).getMessage());
}
Also used : Issue(org.eclipse.xtext.validation.Issue) IResourceValidator(org.eclipse.xtext.validation.IResourceValidator) XtextResource(org.eclipse.xtext.resource.XtextResource) Test(org.junit.Test)

Example 74 with Issue

use of org.eclipse.xtext.validation.Issue in project xtext-core by eclipse.

the class XtextValidationTest method testMissingArgument.

@Test
public void testMissingArgument() throws Exception {
    XtextResource resource = getResourceFromString("grammar com.acme.Bar with org.eclipse.xtext.common.Terminals\n" + "generate metamodel 'myURI'\n" + "Model: rule=Rule<First=true, Second=false>;\n" + "Rule<First, Missing, Second>: name=ID;");
    IResourceValidator validator = get(IResourceValidator.class);
    List<Issue> issues = validator.validate(resource, CheckMode.FAST_ONLY, CancelIndicator.NullImpl);
    assertEquals(issues.toString(), 1, issues.size());
    assertEquals("Missing argument for parameter Missing", issues.get(0).getMessage());
}
Also used : Issue(org.eclipse.xtext.validation.Issue) IResourceValidator(org.eclipse.xtext.validation.IResourceValidator) XtextResource(org.eclipse.xtext.resource.XtextResource) Test(org.junit.Test)

Example 75 with Issue

use of org.eclipse.xtext.validation.Issue in project xtext-core by eclipse.

the class XtextValidationTest method testSupressedWarning_02.

@Test
public void testSupressedWarning_02() throws Exception {
    XtextResource resource = getResourceFromString("grammar org.acme.Bar with org.eclipse.xtext.common.Terminals\n" + "generate metamodel 'myURI'\n" + "/* SuppressWarnings[potentialOverride] */\n" + "Parens: \n" + "  ('(' Parens ')'|name=ID) em='!'?;");
    assertTrue(resource.getErrors().toString(), resource.getErrors().isEmpty());
    assertTrue(resource.getWarnings().toString(), resource.getWarnings().isEmpty());
    IResourceValidator validator = get(IResourceValidator.class);
    List<Issue> issues = validator.validate(resource, CheckMode.FAST_ONLY, CancelIndicator.NullImpl);
    assertTrue(issues.toString(), issues.isEmpty());
}
Also used : Issue(org.eclipse.xtext.validation.Issue) IResourceValidator(org.eclipse.xtext.validation.IResourceValidator) XtextResource(org.eclipse.xtext.resource.XtextResource) Test(org.junit.Test)

Aggregations

Issue (org.eclipse.xtext.validation.Issue)108 Test (org.junit.Test)40 XtextResource (org.eclipse.xtext.resource.XtextResource)35 Resource (org.eclipse.emf.ecore.resource.Resource)23 List (java.util.List)20 IResourceValidator (org.eclipse.xtext.validation.IResourceValidator)20 URI (org.eclipse.emf.common.util.URI)16 ArrayList (java.util.ArrayList)12 XtextResourceSet (org.eclipse.xtext.resource.XtextResourceSet)12 IFile (org.eclipse.core.resources.IFile)11 XtendFile (org.eclipse.xtend.core.xtend.XtendFile)11 IXtextDocument (org.eclipse.xtext.ui.editor.model.IXtextDocument)11 IssueResolution (org.eclipse.xtext.ui.editor.quickfix.IssueResolution)11 XtextEditor (org.eclipse.xtext.ui.editor.XtextEditor)10 Severity (org.eclipse.xtext.diagnostics.Severity)9 IOException (java.io.IOException)8 CoreException (org.eclipse.core.runtime.CoreException)8 ResourceSet (org.eclipse.emf.ecore.resource.ResourceSet)8 StringInputStream (org.eclipse.xtext.util.StringInputStream)8 EObject (org.eclipse.emf.ecore.EObject)6