[jbosstools-commits] JBoss Tools SVN: r39361 - in trunk: cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation and 1 other directories.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Wed Mar 7 20:06:06 EST 2012


Author: akazakov
Date: 2012-03-07 20:06:06 -0500 (Wed, 07 Mar 2012)
New Revision: 39361

Added:
   trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/jbt/validation/MaxNumberOfProblems.java
Modified:
   trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/CoreValidationTest.java
   trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ValidationErrorManager.java
Log:
https://issues.jboss.org/browse/JBIDE-11198 CDI Validation reports N+1 problems per file even N problems per file configured in CDI Validation Preferences

Added: trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/jbt/validation/MaxNumberOfProblems.java
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/jbt/validation/MaxNumberOfProblems.java	                        (rev 0)
+++ trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/jbt/validation/MaxNumberOfProblems.java	2012-03-08 01:06:06 UTC (rev 39361)
@@ -0,0 +1,45 @@
+package org.jboss.jsr299.tck.tests.jbt.validation;
+
+import javax.inject.Inject;
+
+public class MaxNumberOfProblems {
+
+	@Inject Clazz c1;
+	@Inject Clazz c2;
+	@Inject Clazz c3;
+	@Inject Clazz c4;
+	@Inject Clazz c5;
+	@Inject Clazz c6;
+	@Inject Clazz c7;
+	@Inject Clazz c8;
+	@Inject Clazz c9;
+	@Inject Clazz c10;
+	@Inject Clazz c11;
+	@Inject Clazz c12;
+	@Inject Clazz c13;
+	@Inject Clazz c14;
+	@Inject Clazz c15;
+	@Inject Clazz c16;
+	@Inject Clazz c17;
+	@Inject Clazz c18;
+	@Inject Clazz c19;
+	@Inject Clazz c20;
+	@Inject Clazz c21;
+	@Inject Clazz c22;
+	@Inject Clazz c23;
+	@Inject Clazz c24;
+	@Inject Clazz c25;
+	@Inject Clazz c26;
+	@Inject Clazz c27;
+	@Inject Clazz c28;
+	@Inject Clazz c29;
+	@Inject Clazz c30;
+
+	public static class Clazz {
+		
+	}
+
+	public static class Clazz2 extends Clazz {
+		
+	}
+}
\ No newline at end of file


Property changes on: trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/jbt/validation/MaxNumberOfProblems.java
___________________________________________________________________
Added: svn:mime-type
   + text/plain

Modified: trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/CoreValidationTest.java
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/CoreValidationTest.java	2012-03-08 00:43:31 UTC (rev 39360)
+++ trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/CoreValidationTest.java	2012-03-08 01:06:06 UTC (rev 39361)
@@ -12,18 +12,24 @@
 
 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.jface.preference.IPersistentPreferenceStore;
 import org.eclipse.jface.preference.IPreferenceStore;
 import org.jboss.tools.cdi.core.CDICorePlugin;
+import org.jboss.tools.cdi.core.preferences.CDIPreferences;
 import org.jboss.tools.cdi.internal.core.validation.CDICoreValidator;
 import org.jboss.tools.cdi.internal.core.validation.CDIProjectTree;
+import org.jboss.tools.cdi.internal.core.validation.CDIValidationMessages;
 import org.jboss.tools.common.preferences.SeverityPreferences;
 import org.jboss.tools.common.validation.IValidator;
 import org.jboss.tools.common.validation.ValidationContext;
 import org.jboss.tools.common.validation.ValidatorManager;
 import org.jboss.tools.common.validation.internal.LinkCollection;
 import org.jboss.tools.common.validation.internal.ProjectValidationContext;
+import org.jboss.tools.tests.AbstractResourceMarkerTest;
 
 /**
  * @author Alexey Kazakov
@@ -81,6 +87,17 @@
 		assertTrue("Validation context for CDIproject with wrong ID is not empty", collection.isEmpty());
 	}
 
+	/**
+	 * https://issues.jboss.org/browse/JBIDE-11198
+	 * @throws CoreException
+	 */
+	public void testMaximumProblemsPerFile() throws CoreException {
+		IFile file = tckProject.getFile("JavaSource/org/jboss/jsr299/tck/tests/jbt/validation/MaxNumberOfProblems.java");
+		int max = CDIPreferences.getMaxNumberOfProblemMarkersPerFile(tckProject);
+		IMarker[] markers = AbstractResourceMarkerTest.findMarkers(file, AbstractResourceMarkerTest.MARKER_TYPE, CDIValidationMessages.AMBIGUOUS_INJECTION_POINTS);
+		assertEquals(max, markers.length);
+	}
+
 	private LinkCollection getCoreLinks(IProject project) {
 		return getCoreLinks(project, CDICoreValidator.SHORT_ID);
 	}

Modified: trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ValidationErrorManager.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ValidationErrorManager.java	2012-03-08 00:43:31 UTC (rev 39360)
+++ trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ValidationErrorManager.java	2012-03-08 01:06:06 UTC (rev 39361)
@@ -523,7 +523,7 @@
 		}
 		if(maxNumberOfMarkersPerFile>0) {
 			int existingMarkers = resource.findMarkers(markerType, true, IResource.DEPTH_ZERO).length;
-			if(existingMarkers>maxNumberOfMarkersPerFile) {
+			if(existingMarkers>=maxNumberOfMarkersPerFile) {
 				return null;
 			}
 		}



More information about the jbosstools-commits mailing list