package org.jboss.tools.ws.ui.bot.test.rest; import org.jboss.reddeer.eclipse.ui.problems.ProblemsView.ProblemType; import org.jboss.reddeer.junit.runner.RedDeerSuite; import org.jboss.reddeer.requirements.autobuilding.AutoBuildingRequirement.AutoBuilding; import org.jboss.tools.ws.reddeer.editor.ExtendedTextEditor; import org.jboss.tools.ws.ui.bot.test.utils.ProjectHelper; import org.junit.Test; import org.junit.runner.RunWith; /** * Testing validation of related JAX-RS elements. * * @author Radoslav Rabara * * @see http://tools.jboss.org/documentation/whatsnew/jbosstools/4.2.0.Beta3.html#validating-related-jax-rs-elements * @since 4.2.0.Beta3 */ @RunWith(RedDeerSuite.class) @AutoBuilding(value = false, cleanup = true) public class ValidatingRelatedRSElementsTest extends RESTfulTestBase { @Override protected String getWsProjectName() { return "restRelatedValidation"; } @Test public void validParameterTest() { ProjectHelper.cleanAllProjects(); /* assert there is invalid parameter error */ assertCountOfValidationProblemsExists(ProblemType.ERROR, getWsProjectName(), null, null, 1); assertCountOfValidationProblemsExists(ProblemType.ERROR, getWsProjectName(), "The type 'org.rest.test.CarFromString' is not valid for this parameter.", null, 1); /* fix the error */ openJavaFile(getWsProjectName(), "org.rest.test", "CarFromString.java"); ExtendedTextEditor textEditor = new ExtendedTextEditor(); textEditor.replace("Car fromString(", "CarFromString fromString("); ProjectHelper.cleanAllProjects(); /* error disappeared */ assertCountOfProblemsExists(ProblemType.ERROR, getWsProjectName(), null, null, 0); } }