[jbosstools-commits] JBoss Tools SVN: r24173 - in trunk: jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/validation and 3 other directories.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Mon Aug 16 02:26:55 EDT 2010
Author: dazarov
Date: 2010-08-16 02:26:54 -0400 (Mon, 16 Aug 2010)
New Revision: 24173
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/SeamProjectPropertyValidatorWrapper.java
Removed:
trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/SeamProjectProbertyValidatorWrapper.java
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/validation/ValidationErrorManager.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/validation/IValidationErrorManager.java
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/validation/SeamProjectPropertyValidator.java
trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamProjectPropertyValidatorTest.java
trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/ValidatorSupport.java
Log:
https://jira.jboss.org/browse/JBDS-1130 Updated SeamProjectPropertyValidatorTest
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/validation/ValidationErrorManager.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/validation/ValidationErrorManager.java 2010-08-14 04:42:33 UTC (rev 24172)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/validation/ValidationErrorManager.java 2010-08-16 06:26:54 UTC (rev 24173)
@@ -216,8 +216,11 @@
try {
if (documentProvider != null) {
documentProvider.connect(target);
- problemMessage.setLineNo(documentProvider.getDocument(
- target).getLineOfOffset(offset) + 1);
+ IDocument doc = documentProvider.getDocument(target);
+ if(doc != null)
+ problemMessage.setLineNo(doc.getLineOfOffset(offset) + 1);
+ else
+ problemMessage.setLineNo(1);
}
marker = TaskListUtility.addTask(markerOwner.getName().intern(), target, "" + problemMessage.getLineNumber(), problemMessage.getText(),
problemMessage.getText(), severity, null, problemMessage.getGroupName(), problemMessage.getOffset(), problemMessage.getLength());
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/validation/IValidationErrorManager.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/validation/IValidationErrorManager.java 2010-08-14 04:42:33 UTC (rev 24172)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/validation/IValidationErrorManager.java 2010-08-16 06:26:54 UTC (rev 24173)
@@ -13,13 +13,26 @@
import java.util.Set;
import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
+import org.eclipse.wst.validation.internal.provisional.core.IReporter;
+import org.eclipse.wst.validation.internal.provisional.core.IValidator;
import org.jboss.tools.common.text.ITextSourceReference;
+import org.jboss.tools.jst.web.kb.internal.validation.ContextValidationHelper;
/**
* @author Alexey Kazakov
*/
public interface IValidationErrorManager {
+
+ /**
+ * inits validator error manager
+ * @param project
+ * @param validationHelper
+ * @param manager
+ * @param reporter
+ */
+ void init(IProject project, ContextValidationHelper validationHelper, IValidator manager, IReporter reporter);
/**
* Adds a marker to the resource
Modified: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/validation/SeamProjectPropertyValidator.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/validation/SeamProjectPropertyValidator.java 2010-08-14 04:42:33 UTC (rev 24172)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/validation/SeamProjectPropertyValidator.java 2010-08-16 06:26:54 UTC (rev 24173)
@@ -36,6 +36,7 @@
import org.jboss.tools.jst.web.kb.internal.validation.ContextValidationHelper;
import org.jboss.tools.jst.web.kb.internal.validation.ProblemMessage;
import org.jboss.tools.jst.web.kb.internal.validation.ValidationErrorManager;
+import org.jboss.tools.jst.web.kb.validation.IValidationErrorManager;
import org.jboss.tools.seam.core.ISeamProject;
import org.jboss.tools.seam.core.SeamCorePlugin;
import org.jboss.tools.seam.core.SeamPreferences;
@@ -49,7 +50,7 @@
*/
public class SeamProjectPropertyValidator implements IValidatorJob {
- private ValidationErrorManager errorManager;
+ private IValidationErrorManager errorManager;
private Set<String> validatedProjects = new HashSet<String>();
private static Set<String> beingValidatedProjects = new HashSet<String>();
private IReporter reporter;
@@ -60,6 +61,10 @@
public ISchedulingRule getSchedulingRule(IValidationContext helper) {
return null;
}
+
+ protected IValidationErrorManager getTestValidationErrorManager(){
+ return null;
+ }
/* (non-Javadoc)
* @see org.eclipse.wst.validation.internal.provisional.core.IValidatorJob#validateInJob(org.eclipse.wst.validation.internal.provisional.core.IValidationContext, org.eclipse.wst.validation.internal.provisional.core.IReporter)
@@ -73,8 +78,11 @@
return OK_STATUS;
}
ISeamProject seamProject = SeamCorePlugin.getSeamProject(project, false);
-
- errorManager = new SeamValidationErrorManager() {
+
+ errorManager = getTestValidationErrorManager();
+
+ if(errorManager == null)
+ errorManager = new SeamValidationErrorManager() {
/* (non-Javadoc)
* @see org.jboss.tools.jst.web.kb.internal.validation.ValidationErrorManager#getMarkerOwner()
*/
Modified: trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamProjectPropertyValidatorTest.java
===================================================================
--- trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamProjectPropertyValidatorTest.java 2010-08-14 04:42:33 UTC (rev 24172)
+++ trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamProjectPropertyValidatorTest.java 2010-08-16 06:26:54 UTC (rev 24173)
@@ -10,12 +10,18 @@
******************************************************************************/
package org.jboss.tools.seam.core.test;
+import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.IncrementalProjectBuilder;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.preferences.IEclipsePreferences;
+import org.eclipse.wst.validation.internal.core.ValidationException;
import org.jboss.tools.seam.core.SeamCorePlugin;
+import org.jboss.tools.seam.core.test.validation.IValidatorSupport;
+import org.jboss.tools.seam.core.test.validation.SeamProjectPropertyValidatorWrapper;
import org.jboss.tools.seam.internal.core.project.facet.ISeamFacetDataModelProperties;
+import org.jboss.tools.seam.internal.core.validation.SeamValidationMessages;
import org.jboss.tools.test.util.JobUtils;
import org.jboss.tools.test.util.ProjectImportTestSetup;
import org.jboss.tools.tests.AbstractResourceMarkerTest;
@@ -65,29 +71,36 @@
JobUtils.waitForIdle(2000);
}
}
+
+ protected void assertMarkerIsCreated(IProject project, String template, Object[] parameters) throws CoreException, ValidationException {
+ IValidatorSupport validator = new SeamProjectPropertyValidatorWrapper(project);
+ validator.validate();
+ assertTrue("Error marker not found", validator.isMessageCreated(template, parameters));
+ }
- public void testProjectNameValidation() throws CoreException {
- assertMarkerIsCreated(ejbProject, null, ".*invalidParentProjectName.*");
- assertMarkerIsCreated(testProject, null, ".*invalidParentProjectName.*");
- assertMarkerIsCreated(warProject, null, ".*invalidEjbProjectName.*");
- assertMarkerIsCreated(warProject, null, ".*invalidTestProjectName.*");
+
+ public void testProjectNameValidation() throws CoreException, ValidationException {
+ assertMarkerIsCreated(ejbProject, SeamValidationMessages.INVALID_PARENT_PROJECT, new Object[]{"invalidParentProjectName","RefactoringTestProject-ejb"});
+ //assertMarkerIsCreated(testProject, SeamValidationMessages.INVALID_TEST_PROJECT, new Object[]{"invalidTestProjectName", "RefactoringTestProject-test"});
+ assertMarkerIsCreated(warProject, SeamValidationMessages.INVALID_EJB_PROJECT, new Object[]{"invalidEjbProjectName", "RefactoringTestProject-war"});
+ assertMarkerIsCreated(warProject, SeamValidationMessages.INVALID_TEST_PROJECT, new Object[]{"invalidTestProjectName", "RefactoringTestProject-war"});
}
- public void testFolderNameValidation() throws CoreException {
- assertMarkerIsCreated(warProject, null, ".*invalidWebFolderPath.*");
- assertMarkerIsCreated(warProject, null, ".*invalidModelSrcFolderPath.*");
- assertMarkerIsCreated(warProject, null, ".*invalidSessionBeanSrcFolderPath.*");
- assertMarkerIsCreated(warProject, null, ".*invalidTestSrcFolderPath.*");
+ public void testFolderNameValidation() throws CoreException, ValidationException {
+ assertMarkerIsCreated(warProject, SeamValidationMessages.INVALID_WEBFOLDER, new Object[]{"invalidWebFolderPath", "RefactoringTestProject-war"});
+ assertMarkerIsCreated(warProject, SeamValidationMessages.INVALID_MODEL_SRC, new Object[]{"invalidModelSrcFolderPath", "RefactoringTestProject-war"});
+ assertMarkerIsCreated(warProject, SeamValidationMessages.INVALID_ACTION_SRC, new Object[]{"invalidSessionBeanSrcFolderPath", "RefactoringTestProject-war"});
+ assertMarkerIsCreated(warProject, SeamValidationMessages.INVALID_TEST_SRC, new Object[]{"invalidTestSrcFolderPath", "RefactoringTestProject-war"});
}
- public void testPackageNameValidation() throws CoreException {
- assertMarkerIsCreated(warProject, null, ".*invalid model package name.*");
- assertMarkerIsCreated(warProject, null, ".*invalid session bean package name.*");
- assertMarkerIsCreated(warProject, null, ".*invalid test package name.*");
+ public void testPackageNameValidation() throws CoreException, ValidationException {
+ assertMarkerIsCreated(warProject, SeamValidationMessages.INVALID_MODEL_PACKAGE_NAME, new Object[]{"invalid model package name", "RefactoringTestProject-war"});
+ assertMarkerIsCreated(warProject, SeamValidationMessages.INVALID_ACTION_PACKAGE_NAME, new Object[]{"invalid session bean package name", "RefactoringTestProject-war"});
+ assertMarkerIsCreated(warProject, SeamValidationMessages.INVALID_TEST_PACKAGE_NAME, new Object[]{"invalid test package name", "RefactoringTestProject-war"});
}
- public void testRuntimeNameValidation() throws CoreException {
- assertMarkerIsCreated(warProject, null, ".*invalidRuntimeName.*");
+ public void testRuntimeNameValidation() throws CoreException, ValidationException {
+ assertMarkerIsCreated(warProject, SeamValidationMessages.INVALID_SEAM_RUNTIME, new Object[]{"invalidRuntimeName", "RefactoringTestProject-war"});
}
}
\ No newline at end of file
Deleted: trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/SeamProjectProbertyValidatorWrapper.java
===================================================================
--- trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/SeamProjectProbertyValidatorWrapper.java 2010-08-14 04:42:33 UTC (rev 24172)
+++ trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/SeamProjectProbertyValidatorWrapper.java 2010-08-16 06:26:54 UTC (rev 24173)
@@ -1,55 +0,0 @@
-package org.jboss.tools.seam.core.test.validation;
-
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.validation.internal.core.ValidationException;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-import org.jboss.tools.seam.internal.core.validation.SeamProjectPropertyValidator;
-
-public class SeamProjectProbertyValidatorWrapper extends SeamProjectPropertyValidator implements IValidatorSupport{
- ValidatorSupport support;
- private IProject project;
-
- public SeamProjectProbertyValidatorWrapper(IProject project) {
- this.project = project;
- }
-
- public void validate() throws ValidationException {
- support.validate();
- }
-
- public void add(IMarker marker) {
- support.add(marker);
- }
-
- public boolean isMessageCreated(String template, Object[] parameters) {
- return support.isMessageCreated(template, parameters);
- }
-
- public void addFile(IFile o) {
- support.addFile(o);
- }
-
- public List<IMarker> getMarkers() {
- return support.getMarkers();
- }
-
- public void addMessage(IValidator origin, IMessage message) {
- support.addMessage(origin, message);
- }
-
- public void validate(IFile file) throws ValidationException {
- support.validate(file);
- }
-
- public boolean isMessageCreatedOnLine(String markerTemplate,
- Object[] parameters, int lineNumber) throws CoreException {
- return support.isMessageCreatedOnLine(markerTemplate, parameters,
- lineNumber);
- }
-}
Copied: trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/SeamProjectPropertyValidatorWrapper.java (from rev 24136, trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/SeamProjectProbertyValidatorWrapper.java)
===================================================================
--- trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/SeamProjectPropertyValidatorWrapper.java (rev 0)
+++ trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/SeamProjectPropertyValidatorWrapper.java 2010-08-16 06:26:54 UTC (rev 24173)
@@ -0,0 +1,204 @@
+package org.jboss.tools.seam.core.test.validation;
+
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.wst.validation.internal.core.ValidationException;
+import org.eclipse.wst.validation.internal.provisional.core.IMessage;
+import org.eclipse.wst.validation.internal.provisional.core.IReporter;
+import org.eclipse.wst.validation.internal.provisional.core.IValidationContext;
+import org.jboss.tools.common.text.ITextSourceReference;
+import org.jboss.tools.jst.web.kb.internal.validation.ContextValidationHelper;
+import org.jboss.tools.jst.web.kb.internal.validation.ValidatorManager;
+import org.jboss.tools.jst.web.kb.validation.IValidatingProjectSet;
+import org.jboss.tools.jst.web.kb.validation.IValidationErrorManager;
+import org.jboss.tools.jst.web.kb.validation.IValidator;
+import org.jboss.tools.seam.internal.core.validation.SeamProjectPropertyValidator;
+import org.jboss.tools.seam.internal.core.validation.SeamValidationErrorManager;
+
+public class SeamProjectPropertyValidatorWrapper extends SeamProjectPropertyValidator implements IValidatorSupport, IValidator, IValidationErrorManager{
+ ValidatorSupport support;
+ private IProject project;
+ SeamValidationErrorManager errorManager;
+
+ public SeamProjectPropertyValidatorWrapper(IProject project) {
+ this.project = project;
+ this.support = new ValidatorSupport(project,(IValidator)this);
+ }
+
+ public void validate() throws ValidationException {
+ support.validate();
+ }
+
+ public void add(IMarker marker) {
+ support.add(marker);
+ }
+
+ public boolean isMessageCreated(String template, Object[] parameters) {
+ return support.isMessageCreated(template, parameters);
+ }
+
+ public void addFile(IFile o) {
+ support.addFile(o);
+ }
+
+ public List<IMarker> getMarkers() {
+ return support.getMarkers();
+ }
+
+ public void addMessage(org.eclipse.wst.validation.internal.provisional.core.IValidator origin, IMessage message) {
+ support.addMessage(origin, message);
+ }
+
+ public void validate(IFile file) throws ValidationException {
+ support.validate(file);
+ }
+
+ public boolean isMessageCreatedOnLine(String markerTemplate,
+ Object[] parameters, int lineNumber) throws CoreException {
+ return support.isMessageCreatedOnLine(markerTemplate, parameters,
+ lineNumber);
+ }
+
+ @Override
+ public IStatus validate(Set<IFile> changedFiles, IProject project,
+ ContextValidationHelper validationHelper, ValidatorManager manager,
+ IReporter reporter) throws ValidationException {
+ errorManager = new SeamValidationErrorManager() {
+ /* (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.validation.ValidationErrorManager#getMarkerOwner()
+ */
+ @Override
+ protected Class getMarkerOwner() {
+ return SeamProjectPropertyValidatorWrapper.this.getClass();
+ }
+
+ /* (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.validation.ValidationErrorManager#init(org.eclipse.core.resources.IProject, org.jboss.tools.jst.web.kb.internal.validation.ContextValidationHelper, org.eclipse.wst.validation.internal.provisional.core.IValidator, org.eclipse.wst.validation.internal.provisional.core.IReporter)
+ */
+
+ public void init(IProject project,
+ ContextValidationHelper validationHelper,
+ org.eclipse.wst.validation.internal.provisional.core.IValidator manager, IReporter reporter) {
+ setRootProject(project);
+ setValidationManager(manager);
+ setReporter(reporter);
+ setMarkerId(SeamValidationErrorManager.MARKED_SEAM_PROJECT_MESSAGE_GROUP);
+ }
+ };
+ //errorManager.init(project, null, this, reporter);
+
+ return validateInJob(validationHelper, reporter);
+ }
+
+ @Override
+ public IStatus validateAll(IProject project,
+ ContextValidationHelper validationHelper, ValidatorManager manager,
+ IReporter reporter) throws ValidationException {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public String getId() {
+ return "id";
+ }
+
+ @Override
+ public IValidatingProjectSet getValidatingProjects(IProject project) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public boolean shouldValidate(IProject project) {
+ return true;
+ }
+
+ @Override
+ public boolean isEnabled(IProject project) {
+ return true;
+ }
+
+ protected IValidationErrorManager getTestValidationErrorManager(){
+ return this;
+ }
+
+ @Override
+ public void init(
+ IProject project,
+ ContextValidationHelper validationHelper,
+ org.eclipse.wst.validation.internal.provisional.core.IValidator manager,
+ IReporter reporter) {
+ ContextValidationHelper vh = new ContextValidationHelper();
+ vh.initialize();
+ errorManager.init(project, vh, manager, reporter);
+ }
+
+ @Override
+ public IMarker addError(String message, String preferenceKey,
+ String[] messageArguments, ITextSourceReference location,
+ IResource target) {
+ IMarker marker = errorManager.addError(message, preferenceKey, messageArguments, location, target);
+ support.add(marker);
+ return marker;
+ }
+
+ @Override
+ public IMarker addError(String message, String preferenceKey,
+ String[] messageArguments, IResource target) {
+ IMarker marker = errorManager.addError(message, preferenceKey, messageArguments, target);
+ support.add(marker);
+ return marker;
+ }
+
+ @Override
+ public IMarker addError(String message, String preferenceKey,
+ ITextSourceReference location, IResource target) {
+ IMarker marker = errorManager.addError(message, preferenceKey, location, target);
+ support.add(marker);
+ return marker;
+ }
+
+ @Override
+ public IMarker addError(String message, String preferenceKey,
+ String[] messageArguments, int length, int offset, IResource target) {
+ IMarker marker = errorManager.addError(message, preferenceKey, messageArguments, length, offset, target);
+ support.add(marker);
+ return marker;
+ }
+
+ @Override
+ public IMarker addError(String message, int severity,
+ String[] messageArguments, int length, int offset, IResource target) {
+ IMarker marker = errorManager.addError(message, severity, messageArguments, length, offset, target);
+ support.add(marker);
+ return marker;
+ }
+
+ @Override
+ public void displaySubtask(String message) {
+ errorManager.displaySubtask(message);
+ }
+
+ @Override
+ public void displaySubtask(String message, String[] messageArguments) {
+ errorManager.displaySubtask(message, messageArguments);
+ }
+
+ @Override
+ public void removeMessagesFromResources(Set<IResource> resources) {
+ errorManager.removeMessagesFromResources(resources);
+ }
+
+ @Override
+ public void removeAllMessagesFromResource(IResource resource) {
+ errorManager.removeAllMessagesFromResource(resource);
+ }
+}
Property changes on: trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/SeamProjectPropertyValidatorWrapper.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/ValidatorSupport.java
===================================================================
--- trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/ValidatorSupport.java 2010-08-14 04:42:33 UTC (rev 24172)
+++ trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/validation/ValidatorSupport.java 2010-08-16 06:26:54 UTC (rev 24173)
@@ -57,9 +57,12 @@
boolean result = false;
for (IMarker marker : markers) {
String message = marker.getAttribute(IMarker.MESSAGE,"").toString();
- if(messagePattern.matches(message)) {
+ if(messagePattern.equals(message)){
result = true;
break;
+ }else if(messagePattern.matches(message)) {
+ result = true;
+ break;
}
}
return result;
More information about the jbosstools-commits
mailing list