Author: jjankovi
Date: 2011-11-30 08:05:20 -0500 (Wed, 30 Nov 2011)
New Revision: 36775
Added:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/ManagedBeanNoParamNamed.java.cdi
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/ManagedBeanParamNamed.java.cdi
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index1.xhtml.cdi
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index2.xhtml.cdi
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index3.xhtml.cdi
Removed:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/ManagedBean.java.cdi
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index.xhtml.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/jsf/JSFTestBase.java
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/jsf/NamedRefactoringTest.java
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/uiutils/CDIWizardHelper.java
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/uiutils/EditorResourceHelper.java
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/uiutils/wizards/XHTMLDialogWizard.java
Log:
Completion of Named Annotation Refactoring test
Deleted: trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/ManagedBean.java.cdi
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/ManagedBean.java.cdi 2011-11-30
11:31:46 UTC (rev 36774)
+++
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/ManagedBean.java.cdi 2011-11-30
13:05:20 UTC (rev 36775)
@@ -1,16 +0,0 @@
-package cdi;
-
-import javax.inject.Named;
-
-@Named("bean")
-public class ManagedBean {
-
- public ManagedBean() {
-
- }
-
- public String submit() {
- return "OK";
- }
-
-}
\ No newline at end of file
Added:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/ManagedBeanNoParamNamed.java.cdi
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/ManagedBeanNoParamNamed.java.cdi
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/ManagedBeanNoParamNamed.java.cdi 2011-11-30
13:05:20 UTC (rev 36775)
@@ -0,0 +1,16 @@
+package cdi;
+
+import javax.inject.Named;
+
+@Named
+public class ManagedBean2 {
+
+ public ManagedBean2() {
+
+ }
+
+ public String submit() {
+ return "OK";
+ }
+
+}
\ No newline at end of file
Added:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/ManagedBeanParamNamed.java.cdi
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/ManagedBeanParamNamed.java.cdi
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/ManagedBeanParamNamed.java.cdi 2011-11-30
13:05:20 UTC (rev 36775)
@@ -0,0 +1,16 @@
+package cdi;
+
+import javax.inject.Named;
+
+@Named("bean")
+public class ManagedBean1 {
+
+ public ManagedBean1() {
+
+ }
+
+ public String submit() {
+ return "OK";
+ }
+
+}
\ No newline at end of file
Deleted: trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index.xhtml.cdi
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index.xhtml.cdi 2011-11-30
11:31:46 UTC (rev 36774)
+++ trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index.xhtml.cdi 2011-11-30
13:05:20 UTC (rev 36775)
@@ -1,14 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html
xmlns="http://www.w3.org/1999/xhtml"
-
xmlns:h="http://java.sun.com/jsf/html"
-
xmlns:f="http://java.sun.com/jsf/core"
-
xmlns:ui="http://java.sun.com/jsf/facelets">
-
-<h:head></h:head>
-<body>
- <h:form>
- <h:commandButton action="#{bean.submit()}" value="Submit" />
- </h:form>
-
-</body>
-</html>
\ No newline at end of file
Added: trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index1.xhtml.cdi
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index1.xhtml.cdi
(rev 0)
+++ trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index1.xhtml.cdi 2011-11-30
13:05:20 UTC (rev 36775)
@@ -0,0 +1,14 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html
xmlns="http://www.w3.org/1999/xhtml"
+
xmlns:h="http://java.sun.com/jsf/html"
+
xmlns:f="http://java.sun.com/jsf/core"
+
xmlns:ui="http://java.sun.com/jsf/facelets">
+
+<h:head></h:head>
+<body>
+ <h:form>
+ <h:commandButton action="#{bean.submit()}" value="Submit" />
+ </h:form>
+
+</body>
+</html>
\ No newline at end of file
Added: trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index2.xhtml.cdi
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index2.xhtml.cdi
(rev 0)
+++ trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index2.xhtml.cdi 2011-11-30
13:05:20 UTC (rev 36775)
@@ -0,0 +1,14 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html
xmlns="http://www.w3.org/1999/xhtml"
+
xmlns:h="http://java.sun.com/jsf/html"
+
xmlns:f="http://java.sun.com/jsf/core"
+
xmlns:ui="http://java.sun.com/jsf/facelets">
+
+<h:head></h:head>
+<body>
+ <h:form>
+ <h:commandButton action="#{managedBean2.submit()}"
value="Submit" />
+ </h:form>
+
+</body>
+</html>
\ No newline at end of file
Added: trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index3.xhtml.cdi
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index3.xhtml.cdi
(rev 0)
+++ trunk/cdi/tests/org.jboss.tools.cdi.bot.test/resources/jsf/index3.xhtml.cdi 2011-11-30
13:05:20 UTC (rev 36775)
@@ -0,0 +1,15 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html
xmlns="http://www.w3.org/1999/xhtml"
+
xmlns:h="http://java.sun.com/jsf/html"
+
xmlns:f="http://java.sun.com/jsf/core"
+
xmlns:ui="http://java.sun.com/jsf/facelets">
+
+<h:head></h:head>
+<body>
+ <h:form>
+ <h:commandButton action="#{bean.submit()}" value="Submit" />
+ <h:commandButton action="#{managedBean2.submit()}"
value="Submit" />
+ </h:form>
+
+</body>
+</html>
\ 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-11-30
11:31:46 UTC (rev 36774)
+++
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/CDIAllBotTests.java 2011-11-30
13:05:20 UTC (rev 36775)
@@ -50,7 +50,7 @@
* JAVA=1.6,/space/java/sdk/jdk1.6.0_22
*
*
- * Suite duration: aprox. 25min
+ * Suite duration: aprox. 28min
*
* @author Lukas Jungmann
* @author Jaroslav Jankovic
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/jsf/JSFTestBase.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/jsf/JSFTestBase.java 2011-11-30
11:31:46 UTC (rev 36774)
+++
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/jsf/JSFTestBase.java 2011-11-30
13:05:20 UTC (rev 36775)
@@ -32,10 +32,9 @@
public class JSFTestBase extends CDITestBase {
private static final Logger LOGGER = Logger.getLogger(JSFTestBase.class.getName());
-
private JSFEnvironment env = JSFEnvironment.JSF_20;
-
private JSFTemplate template = JSFTemplate.BLANK_LIBS;
+ protected static final String WEB_FOLDER = "pages";
public JSFEnvironment getEnv() {
return env;
@@ -60,13 +59,25 @@
*/
protected void createXHTMLPage(String pageName) {
XHTMLDialogWizard xhtmlWizard = new NewXHTMLFileWizard().run();
- xhtmlWizard.setName(pageName).finish();
+ xhtmlWizard.setDestination(getProjectName() + "/WebContent/" + WEB_FOLDER).
+ setName(pageName).finish();
bot.sleep(Timing.time3S());
util.waitForNonIgnoredJobs();
setEd(bot.activeEditor().toTextEditor());
}
/**
+ * Method created new XHTML page with content of resource
+ * @param pageName
+ */
+ protected void createXHTMLPageWithContent(String pageName, String resource) {
+ createXHTMLPage(pageName);
+ editResourceUtil.replaceClassContentByResource(JSFTestBase.class.
+ getResourceAsStream(resource), false);
+ }
+
+
+ /**
* Method opens context menu for CDI Refactor for selected class
* @param className
* @throws AnnotationException if no menu for CDI Refactor was found
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/jsf/NamedRefactoringTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/jsf/NamedRefactoringTest.java 2011-11-30
11:31:46 UTC (rev 36774)
+++
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/jsf/NamedRefactoringTest.java 2011-11-30
13:05:20 UTC (rev 36775)
@@ -21,6 +21,7 @@
import org.jboss.tools.ui.bot.ext.config.Annotations.Require;
import org.jboss.tools.ui.bot.ext.config.Annotations.Server;
import org.jboss.tools.ui.bot.ext.config.Annotations.ServerState;
+import org.junit.After;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Suite.SuiteClasses;
@@ -38,32 +39,76 @@
@SuiteClasses({ CDIAllBotTests.class })
public class NamedRefactoringTest extends JSFTestBase {
- private static final String MANAGED_BEAN = "ManagedBean";
- private static final String INDEX_XHTML= "index.xhtml";
+ private static final String MANAGED_BEAN_1 = "ManagedBean1";
+ private static final String MANAGED_BEAN_2 = "ManagedBean2";
+ private static final String INDEX_XHTML_1= "index1.xhtml";
+ private static final String INDEX_XHTML_2= "index2.xhtml";
+ private static final String INDEX_XHTML_3= "index3.xhtml";
+ private static final String NEW_NAMED_PARAM = "bean2";
@Override
public String getProjectName() {
return "CDIRefactoring";
}
+
+ @After
+ public void waitForJobs() {
+ editResourceUtil.deletePackage(getProjectName(), getPackageName());
+ editResourceUtil.deleteWebFolder(getProjectName(), WEB_FOLDER);
+ util.waitForNonIgnoredJobs();
+ }
+
+ @Test
+ public void testNamedAnnotationWithParamRefactor() {
+ wizard.createCDIComponentWithContent(CDIWizardType.BEAN, MANAGED_BEAN_1,
+ getPackageName(), null,
"/resources/jsf/ManagedBeanParamNamed.java.cdi");
+
+ createXHTMLPageWithContent(INDEX_XHTML_1,
"/resources/jsf/index1.xhtml.cdi");
+ createXHTMLPageWithContent(INDEX_XHTML_3,
"/resources/jsf/index3.xhtml.cdi");
+
+ bot.editorByTitle(MANAGED_BEAN_1 + ".java").show();
+ setEd(bot.activeEditor().toTextEditor());
+
+ Collection<String> affectedFiles = changeNamedAnnotation(MANAGED_BEAN_1,
+ NEW_NAMED_PARAM);
+ Collection<String> expectedAffectedFiles = Arrays.asList(
+ MANAGED_BEAN_1 + ".java", INDEX_XHTML_1, INDEX_XHTML_3);
+
+ for (String affectedFile : affectedFiles) {
+ bot.editorByTitle(affectedFile).save();
+ }
+
+ assertEquals(expectedAffectedFiles.size(), affectedFiles.size());
+ assertTrue(CollectionsUtil.compareTwoCollectionsEquality(
+ expectedAffectedFiles, affectedFiles));
+
+ assertTrue(bot.editorByTitle(MANAGED_BEAN_1 +
".java").toTextEditor().getText().
+ contains("@Named(\"" + NEW_NAMED_PARAM + "\""));
+
+ assertTrue(bot.editorByTitle(INDEX_XHTML_1).toTextEditor().getText().
+ contains("#{" + NEW_NAMED_PARAM));
+
+ assertTrue(bot.editorByTitle(INDEX_XHTML_3).toTextEditor().getText().
+ contains("#{" + NEW_NAMED_PARAM));
+
+ }
+
@Test
- public void testNamedAnnotationRefactor() {
+ public void testNamedAnnotationWithoutParamRefactor() {
- wizard.createCDIComponent(CDIWizardType.BEAN, MANAGED_BEAN, getPackageName(), null);
- editResourceUtil.replaceClassContentByResource(NamedRefactoringTest.class.
- getResourceAsStream("/resources/jsf/ManagedBean.java.cdi"), false);
+ wizard.createCDIComponentWithContent(CDIWizardType.BEAN, MANAGED_BEAN_2,
+ getPackageName(), null,
"/resources/jsf/ManagedBeanNoParamNamed.java.cdi");
- createXHTMLPage("index.xhtml");
- editResourceUtil.replaceClassContentByResource(NamedRefactoringTest.class.
- getResourceAsStream("/resources/jsf/index.xhtml.cdi"), false);
-
- bot.editorByTitle(MANAGED_BEAN + ".java").show();
+ createXHTMLPageWithContent(INDEX_XHTML_2,
"/resources/jsf/index2.xhtml.cdi");
+ createXHTMLPageWithContent(INDEX_XHTML_3,
"/resources/jsf/index3.xhtml.cdi");
+
+ bot.editorByTitle(MANAGED_BEAN_2 + ".java").show();
setEd(bot.activeEditor().toTextEditor());
- String newNamed = "bean2";
- Collection<String> affectedFiles = changeNamedAnnotation(MANAGED_BEAN,
newNamed);
+ Collection<String> affectedFiles = changeNamedAnnotation(MANAGED_BEAN_2,
NEW_NAMED_PARAM);
Collection<String> expectedAffectedFiles = Arrays.asList(
- MANAGED_BEAN + ".java", INDEX_XHTML);
+ MANAGED_BEAN_2 + ".java", INDEX_XHTML_2, INDEX_XHTML_3);
for (String affectedFile : affectedFiles) {
bot.editorByTitle(affectedFile).save();
@@ -73,13 +118,46 @@
assertTrue(CollectionsUtil.compareTwoCollectionsEquality(
expectedAffectedFiles, affectedFiles));
- assertTrue(bot.editorByTitle(MANAGED_BEAN +
".java").toTextEditor().getText().
- contains("@Named(\"" + newNamed + "\""));
+ assertTrue(bot.editorByTitle(MANAGED_BEAN_2 +
".java").toTextEditor().getText().
+ contains("@Named(\"" + NEW_NAMED_PARAM + "\""));
- assertTrue(bot.editorByTitle(INDEX_XHTML).toTextEditor().getText().
- contains("#{" + newNamed + ".submit()}"));
+ assertTrue(bot.editorByTitle(INDEX_XHTML_2).toTextEditor().getText().
+ contains("#{" + NEW_NAMED_PARAM));
+ assertTrue(bot.editorByTitle(INDEX_XHTML_3).toTextEditor().getText().
+ contains("#{" + NEW_NAMED_PARAM));
+
}
+
+ @Test
+ public void testNamedAnnotationWithoutELRefactoring() {
+
+ wizard.createCDIComponentWithContent(CDIWizardType.BEAN, MANAGED_BEAN_2,
+ getPackageName(), null,
"/resources/jsf/ManagedBeanNoParamNamed.java.cdi");
+
+ createXHTMLPageWithContent(INDEX_XHTML_2,
"/resources/jsf/index1.xhtml.cdi");
+
+ bot.editorByTitle(MANAGED_BEAN_2 + ".java").show();
+ setEd(bot.activeEditor().toTextEditor());
+
+ Collection<String> affectedFiles = changeNamedAnnotation(MANAGED_BEAN_2,
NEW_NAMED_PARAM);
+ Collection<String> expectedAffectedFiles = Arrays.asList(MANAGED_BEAN_2 +
".java");
+
+ for (String affectedFile : affectedFiles) {
+ bot.editorByTitle(affectedFile).save();
+ }
+
+ assertEquals(expectedAffectedFiles.size(), affectedFiles.size());
+ assertTrue(CollectionsUtil.compareTwoCollectionsEquality(
+ expectedAffectedFiles, affectedFiles));
+
+ assertTrue(bot.editorByTitle(MANAGED_BEAN_2 +
".java").toTextEditor().getText().
+ contains("@Named(\"" + NEW_NAMED_PARAM + "\""));
+
+ assertTrue(!bot.editorByTitle(INDEX_XHTML_2).toTextEditor().getText().
+ contains("#{" + NEW_NAMED_PARAM));
+
+ }
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/uiutils/CDIWizardHelper.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/uiutils/CDIWizardHelper.java 2011-11-30
11:31:46 UTC (rev 36774)
+++
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/uiutils/CDIWizardHelper.java 2011-11-30
13:05:20 UTC (rev 36775)
@@ -52,6 +52,21 @@
}
/**
+ * Method creates CDI component with content of resource
+ * @param component
+ * @param name
+ * @param packageName
+ * @param necessaryParam
+ * @param resource
+ */
+ public void createCDIComponentWithContent(CDIWizardType component, String name,
+ String packageName, String necessaryParam, String resource) {
+ createCDIComponent(component, name, packageName, necessaryParam);
+ editResourceUtil.replaceClassContentByResource(CDIWizardHelper.class.
+ getResourceAsStream(resource), false);
+ }
+
+ /**
* Method creates larger number("amount") of the same component.
* @param component
* @param amount
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/uiutils/EditorResourceHelper.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/uiutils/EditorResourceHelper.java 2011-11-30
11:31:46 UTC (rev 36774)
+++
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/uiutils/EditorResourceHelper.java 2011-11-30
13:05:20 UTC (rev 36775)
@@ -130,6 +130,45 @@
}
/**
+ * Method deletes whole package with given name for entered project
+ * @param projectName
+ * @param packageName
+ */
+ public void deletePackage(String projectName, String packageName) {
+
+ String[] path = {projectName, "Java Resources", "JavaSource"};
+ deleteFolderInProjectExplorer(packageName, path);
+
+ }
+
+ /**
+ * Method deletes whole web folder with given name for entered project
+ * @param projectName
+ * @param packageName
+ */
+ public void deleteWebFolder(String projectName, String folder) {
+
+ String[] path = {projectName, "WebContent"};
+ deleteFolderInProjectExplorer(folder, path);
+
+ }
+
+ /**
+ * Method deletes folder with given name and path
+ * @param folderName
+ * @param path
+ */
+ public void deleteFolderInProjectExplorer(String folderName, String... path) {
+
+ SWTBotTree tree = projectExplorer.bot().tree();
+ SWTBotTreeItem item = projectExplorer.selectTreeItem(folderName, path);
+
+ NodeContextUtil.nodeContextMenu(tree, item, "Delete").click();
+ bot.sleep(Timing.time1S());
+ bot.shell("Confirm Delete").bot().button("OK").click();
+ }
+
+ /**
* Method removes the object which is located in "sourceFolder"
* is deleted
* @param object
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/uiutils/wizards/XHTMLDialogWizard.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/uiutils/wizards/XHTMLDialogWizard.java 2011-11-30
11:31:46 UTC (rev 36774)
+++
trunk/cdi/tests/org.jboss.tools.cdi.bot.test/src/org/jboss/tools/cdi/bot/test/uiutils/wizards/XHTMLDialogWizard.java 2011-11-30
13:05:20 UTC (rev 36775)
@@ -11,6 +11,11 @@
assert ("New XHTML Page").equals(getText());
}
+ public XHTMLDialogWizard setDestination(String destination) {
+ setText("Enter or select the parent folder:", destination);
+ return this;
+ }
+
public XHTMLDialogWizard setName(String nameOfPage) {
setText("File name:", nameOfPage);
return this;