[jbosstools-commits] JBoss Tools SVN: r41927 - in trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test: tests and 1 other directory.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Wed Jun 13 06:49:33 EDT 2012


Author: jjankovi
Date: 2012-06-13 06:49:33 -0400 (Wed, 13 Jun 2012)
New Revision: 41927

Added:
   trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/tests/InterfaceAndAbstractValidationTest.java
Modified:
   trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/CDISeam3AllBotTests.java
Log:
new test InterfaceAndAbstractValidationTest implemented and added into test suite

Modified: trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/CDISeam3AllBotTests.java
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/CDISeam3AllBotTests.java	2012-06-13 10:42:16 UTC (rev 41926)
+++ trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/CDISeam3AllBotTests.java	2012-06-13 10:49:33 UTC (rev 41927)
@@ -16,6 +16,7 @@
 import org.jboss.tools.cdi.seam3.bot.test.tests.ExactAnnotationTest;
 import org.jboss.tools.cdi.seam3.bot.test.tests.FullyQualifiedTest;
 import org.jboss.tools.cdi.seam3.bot.test.tests.GenericOpenOnTest;
+import org.jboss.tools.cdi.seam3.bot.test.tests.InterfaceAndAbstractValidationTest;
 import org.jboss.tools.cdi.seam3.bot.test.tests.LoggerSupportTest;
 import org.jboss.tools.cdi.seam3.bot.test.tests.NamedPackagesTest;
 import org.jboss.tools.cdi.seam3.bot.test.tests.RequiresAnnotationTest;
@@ -41,6 +42,7 @@
 	NamedPackagesTest.class,
 	FullyQualifiedTest.class,
 	LoggerSupportTest.class,
+	InterfaceAndAbstractValidationTest.class
 	})
 public class CDISeam3AllBotTests extends AbstractTestSuite {
 	

Added: trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/tests/InterfaceAndAbstractValidationTest.java
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/tests/InterfaceAndAbstractValidationTest.java	                        (rev 0)
+++ trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/tests/InterfaceAndAbstractValidationTest.java	2012-06-13 10:49:33 UTC (rev 41927)
@@ -0,0 +1,93 @@
+/*******************************************************************************
+ * Copyright (c) 2010-2012 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.cdi.seam3.bot.test.tests;
+
+import org.eclipse.core.resources.IMarker;
+import org.jboss.tools.cdi.bot.test.CDIConstants;
+import org.jboss.tools.cdi.seam3.bot.test.base.Seam3TestBase;
+import org.jboss.tools.cdi.seam3.bot.test.util.SeamLibrary;
+import org.jboss.tools.ui.bot.ext.Timing;
+import org.jboss.tools.ui.bot.ext.helper.MarkerHelper;
+import org.junit.After;
+import org.junit.Test;
+
+/**
+ * 
+ * @author jjankovi
+ *
+ */
+public class InterfaceAndAbstractValidationTest extends Seam3TestBase {
+
+	@After
+	public void cleanWS() {
+		projectExplorer.deleteAllProjects();
+	}
+	
+	@Test
+	public void testInterfaceValidation() {
+		
+		/* import test project */
+		String projectName = "interface1";
+		importSeam3ProjectWithLibrary(projectName, SeamLibrary.SOLDER_3_1);
+		bot.sleep(Timing.time3S()); // necessary to CDI Validation computation
+		
+		/* get markers for beans.xml */
+		IMarker[] markers = getMarkersForResource(CDIConstants.BEANS_XML, projectName, 
+				CDIConstants.WEBCONTENT, CDIConstants.WEB_INF);
+		
+		/* assert expected count */
+		assertExpectedCount(markers.length ,1);
+		
+		/* assert message contains expected value */
+		assertMessageContainsExpectedValue(MarkerHelper.getMarkerMessage(markers[0]), 
+				"Interface ", "cannot be configured as a bean");
+		
+	}
+	
+	@Test
+	public void testAbstractTypeValidation() {
+		
+		/* import test project */
+		String projectName = "abstract1";
+		importSeam3ProjectWithLibrary(projectName, SeamLibrary.SOLDER_3_1);
+		bot.sleep(Timing.time3S()); // necessary to CDI Validation computation
+		
+		/* get markers for beans.xml */
+		IMarker[] markers = getMarkersForResource(CDIConstants.BEANS_XML, projectName, 
+				CDIConstants.WEBCONTENT, CDIConstants.WEB_INF);
+		
+		/* assert expected count */
+		assertExpectedCount(markers.length ,1);
+		
+		/* assert message contains expected value */
+		assertMessageContainsExpectedValue(MarkerHelper.getMarkerMessage(markers[0]), 
+				"Abstract type", "cannot be configured as a bean");
+		
+	}
+	
+	private void assertMessageContainsExpectedValue(String message,
+			String... expectedValues) {
+		for (String value : expectedValues) {
+			assertContains(value, message);
+		}
+	}
+	
+	private IMarker[] getMarkersForResource(String resource, String ... path) {
+		MarkerHelper markerHelper = new MarkerHelper(resource, path);
+		return markerHelper.getMarkers();
+	}
+	
+	private void assertExpectedCount(int realCount, int expectedCount) {
+		assertTrue("Expected count: " + expectedCount + " real count: " + realCount, 
+				realCount == expectedCount);
+	}
+	
+}



More information about the jbosstools-commits mailing list