Author: jjankovi
Date: 2011-08-30 07:25:22 -0400 (Tue, 30 Aug 2011)
New Revision: 34385
Added:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/cdi/InterDecor.java.cdi
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/CDIAllBotTests.java
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/hyperlinks/CDIHyperlinksTest.java
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/quickfix/CDIQuickFixTest.java
trunk/ws/tests/org.jboss.tools.ws.ui.bot.test/src/org/jboss/tools/ws/ui/bot/test/wtp/BottomUpWSTest.java
Log:
CDI Quick Fix bot tests added
Added: trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/cdi/InterDecor.java.cdi
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/cdi/InterDecor.java.cdi
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/cdi/InterDecor.java.cdi 2011-08-30
11:25:22 UTC (rev 34385)
@@ -0,0 +1,10 @@
+package org.cdi.test;
+import javax.enterprise.inject.Disposes;
+
+public class InterDecor {
+
+ public void disposeMethod(@Disposes String aa) {
+
+ }
+
+}
\ No newline at end of file
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/CDIAllBotTests.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/CDIAllBotTests.java 2011-08-30
11:13:00 UTC (rev 34384)
+++
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/CDIAllBotTests.java 2011-08-30
11:25:22 UTC (rev 34385)
@@ -34,7 +34,7 @@
* JAVA=1.6,/space/java/sdk/jdk1.6.0_22
*
*
- * Suite duration: aprox. 9min
+ * Suite duration: aprox. 11min
*
* @author Lukas Jungmann
* @author Jaroslav Jankovic
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/hyperlinks/CDIHyperlinksTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/hyperlinks/CDIHyperlinksTest.java 2011-08-30
11:13:00 UTC (rev 34384)
+++
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/hyperlinks/CDIHyperlinksTest.java 2011-08-30
11:25:22 UTC (rev 34385)
@@ -50,7 +50,7 @@
public void testInjectHyperlink() {
CDIUtil.bean(PACKAGE_NAME, "Animal", true, false, false, false, null,
null, null, null).finish();
- bot.sleep(Timing.time3S());
+ bot.sleep(Timing.time1S());
util.waitForNonIgnoredJobs();
CDIUtil.bean(PACKAGE_NAME, "BrokenFarm", true, false, false, false, null,
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/quickfix/CDIQuickFixTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/quickfix/CDIQuickFixTest.java 2011-08-30
11:13:00 UTC (rev 34384)
+++
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/quickfix/CDIQuickFixTest.java 2011-08-30
11:25:22 UTC (rev 34385)
@@ -222,11 +222,11 @@
checkProducerMethod(CDICOMPONENT.BEAN, ANNOTATIONS.INTERCEPTOR, ed, className);
// 3.QF -
https://issues.jboss.org/browse/JBIDE-7684
+ checkDisposesAnnotation(CDICOMPONENT.BEAN, ed, className);
-
// 4.QF -
https://issues.jboss.org/browse/JBIDE-7685
+ checkObserveAnnotation(CDICOMPONENT.BEAN, ed, className);
-
// 5.QF -
https://issues.jboss.org/browse/JBIDE-7686
}
@@ -335,6 +335,11 @@
.getResourceAsStream("/resources/cdi/MyBean2.java.cdi"), false);
}
}
+
+ private void prepareDisposesAnnot(SWTBotEclipseEditor ed) {
+ CDIUtil.copyResourceToClass(ed, CDIQuickFixTest.class
+ .getResourceAsStream("/resources/cdi/InterDecor.java.cdi"), false);
+ }
private void checkTargetAnnotation(CDICOMPONENT comp, SWTBotEclipseEditor ed, String
className) {
checkTargetAnnotWithReplac(comp, ed, className, "@Target({TYPE, FIELD})");
@@ -519,7 +524,42 @@
checkQuickFix(annonType, comp, className, replacement, ed);
}
+ private void checkDisposesAnnotation(CDICOMPONENT comp, SWTBotEclipseEditor ed, String
className) {
+ checkDisposesAnnotWithReplac(comp, ed, className, "@Decorator");
+ checkDisposesAnnotWithReplac(comp, ed, className, "@Interceptor");
+ }
+ private void checkDisposesAnnotWithReplac(CDICOMPONENT comp, SWTBotEclipseEditor ed,
+ String className, String replacement) {
+ prepareDisposesAnnot(ed);
+ String annot = replacement;
+ String importAnnot = "import javax." + replacement.substring(1).toLowerCase()
+ + "." + replacement.substring(1) + ";";
+ CDIUtil.insertInEditor(ed, bot, 2, 0, annot + LINE_SEPARATOR);
+ CDIUtil.insertInEditor(ed, bot, 1, 0, importAnnot + LINE_SEPARATOR);
+ checkQuickFix(ANNOTATIONS.DECORATOR, comp, className, replacement, ed);
+ }
+
+ private void checkObserveAnnotation(CDICOMPONENT comp, SWTBotEclipseEditor ed, String
className) {
+ checkObserveAnnotWithReplac(comp, ed, className, "@Decorator");
+ checkObserveAnnotWithReplac(comp, ed, className, "@Interceptor");
+ }
+
+ private void checkObserveAnnotWithReplac(CDICOMPONENT comp, SWTBotEclipseEditor ed,
+ String className, String replacement) {
+ prepareDisposesAnnot(ed);
+ CDIUtil.replaceInEditor(ed, bot, "@Disposes", "@Observes");
+ CDIUtil.replaceInEditor(ed, bot, "import javax.enterprise.inject.Disposes;",
+ "import javax.enterprise.event.Observes;");
+ CDIUtil.replaceInEditor(ed, bot, "dispose", "observe");
+ String annot = replacement;
+ String importAnnot = "import javax." + replacement.substring(1).toLowerCase()
+ + "." + replacement.substring(1) + ";";
+ CDIUtil.insertInEditor(ed, bot, 2, 0, annot + LINE_SEPARATOR);
+ CDIUtil.insertInEditor(ed, bot, 1, 0, importAnnot + LINE_SEPARATOR);
+ checkQuickFix(ANNOTATIONS.DECORATOR, comp, className, replacement, ed);
+ }
+
private void checkQuickFix(ANNOTATIONS annonType, CDICOMPONENT comp, String className,
String replacement,
SWTBotEclipseEditor ed) {
String componentClass = className + ".java";
@@ -551,7 +591,15 @@
+ PROJECT_NAME, className, "CDI Problem");
} else {
if (className.equals("InterDecor.java")) {
- problemsContains = "Producer cannot be declared in";
+ if (ed.toTextEditor().getText().contains("produceString")) {
+ problemsContains = "Producer cannot be declared in";
+ }
+ if (ed.toTextEditor().getText().contains("disposeMethod")) {
+ problemsContains = "has a method annotated @Disposes";
+ }
+ if (ed.toTextEditor().getText().contains("observeMethod")) {
+ problemsContains = "have a method with a parameter annotated @Observes";
+ }
}
problemsTree = ProblemsView.getFilteredErrorsTreeItems(bot, problemsContains,
"/"
+ PROJECT_NAME, className, "CDI Problem");
Modified:
trunk/ws/tests/org.jboss.tools.ws.ui.bot.test/src/org/jboss/tools/ws/ui/bot/test/wtp/BottomUpWSTest.java
===================================================================
---
trunk/ws/tests/org.jboss.tools.ws.ui.bot.test/src/org/jboss/tools/ws/ui/bot/test/wtp/BottomUpWSTest.java 2011-08-30
11:13:00 UTC (rev 34384)
+++
trunk/ws/tests/org.jboss.tools.ws.ui.bot.test/src/org/jboss/tools/ws/ui/bot/test/wtp/BottomUpWSTest.java 2011-08-30
11:25:22 UTC (rev 34385)
@@ -19,7 +19,6 @@
import org.junit.runner.RunWith;
import org.junit.runners.Suite.SuiteClasses;
-
@Require(server=@Server(),perspective="Java EE")
@RunWith(RequirementAwareSuite.class)
@SuiteClasses({ WSAllBotTests.class})