Author: ljelinko
Date: 2011-12-22 03:51:56 -0500 (Thu, 22 Dec 2011)
New Revision: 37514
Added:
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/browser/
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/browser/PageSourceMatcher.java
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/browser/portlet/
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/browser/portlet/PortletLoads4xRuntimeMatcher.java
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/factory/PortletMatchersFactory.java
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/task/browser/
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/task/browser/LoadBrowserPageTask.java
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/core/LoadJavaPortletInBrowserRuntime4x.java
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/jsf/LoadJSFPortletInBrowserRuntime4x.java
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/template/LoadPortletInBrowser4xRuntimeTemplate.java
Modified:
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/AllTestsSuite.java
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/core/JavaPortletTestSuite.java
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/jsf/JSFPortletTestSuite.java
Log:
Created tests for loading portlet in browser
Added:
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/browser/PageSourceMatcher.java
===================================================================
---
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/browser/PageSourceMatcher.java
(rev 0)
+++
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/browser/PageSourceMatcher.java 2011-12-22
08:51:56 UTC (rev 37514)
@@ -0,0 +1,36 @@
+package org.jboss.tools.portlet.ui.bot.matcher.browser;
+
+import org.hamcrest.Description;
+import org.jboss.tools.portlet.ui.bot.matcher.AbstractSWTMatcher;
+import org.jboss.tools.portlet.ui.bot.task.browser.LoadBrowserPageTask;
+
+/**
+ * Checks if the given page contains specified text.
+ *
+ * @author Lucia Jelinkova
+ *
+ */
+public class PageSourceMatcher extends AbstractSWTMatcher<String> {
+
+ private String url;
+
+ private String pageText;
+
+ public PageSourceMatcher(String url) {
+ super();
+ this.url = url;
+ }
+
+ @Override
+ public boolean matchesSafely(String item) {
+ performInnerTask(new LoadBrowserPageTask(url));
+ pageText = getBot().browser().getText();
+ return pageText.contains(item);
+ }
+
+ @Override
+ public void describeTo(Description description) {
+ description.appendText("is on the page, but there was instead: ");
+ description.appendValue(pageText);
+ }
+}
Added:
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/browser/portlet/PortletLoads4xRuntimeMatcher.java
===================================================================
---
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/browser/portlet/PortletLoads4xRuntimeMatcher.java
(rev 0)
+++
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/browser/portlet/PortletLoads4xRuntimeMatcher.java 2011-12-22
08:51:56 UTC (rev 37514)
@@ -0,0 +1,31 @@
+package org.jboss.tools.portlet.ui.bot.matcher.browser.portlet;
+
+import org.hamcrest.Description;
+import org.jboss.tools.portlet.ui.bot.entity.PortletDefinition;
+import org.jboss.tools.portlet.ui.bot.matcher.AbstractSWTMatcher;
+import org.jboss.tools.portlet.ui.bot.matcher.browser.PageSourceMatcher;
+
+/**
+ * Check if the given portlet can be loaded in EPP 4.x runtime.
+ *
+ * @author Lucia Jelinkova
+ *
+ */
+public class PortletLoads4xRuntimeMatcher extends
AbstractSWTMatcher<PortletDefinition> {
+
+ private static final String PORTAL_URL =
"http://localhost:8080/portal/portal/default/";
+
+ private PageSourceMatcher pageMatcher;
+
+ @Override
+ public boolean matchesSafely(PortletDefinition portletTitle) {
+ pageMatcher = new PageSourceMatcher(PORTAL_URL + portletTitle.getPage());
+ pageMatcher.setBot(getBot());
+ return pageMatcher.matchesSafely("<span
class=\"portlet-titlebar-title\">" + portletTitle.getDisplayName() +
"</span>");
+ }
+
+ @Override
+ public void describeTo(Description description) {
+ description.appendDescriptionOf(pageMatcher);
+ }
+}
Added:
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/factory/PortletMatchersFactory.java
===================================================================
---
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/factory/PortletMatchersFactory.java
(rev 0)
+++
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/matcher/factory/PortletMatchersFactory.java 2011-12-22
08:51:56 UTC (rev 37514)
@@ -0,0 +1,16 @@
+package org.jboss.tools.portlet.ui.bot.matcher.factory;
+
+import org.jboss.tools.portlet.ui.bot.entity.PortletDefinition;
+import org.jboss.tools.portlet.ui.bot.matcher.SWTMatcher;
+import
org.jboss.tools.portlet.ui.bot.matcher.browser.portlet.PortletLoads4xRuntimeMatcher;
+
+public class PortletMatchersFactory {
+
+ private PortletMatchersFactory(){
+ // not to be initialized
+ }
+
+ public static SWTMatcher<PortletDefinition> canLoadAt4xRuntime(){
+ return new PortletLoads4xRuntimeMatcher();
+ }
+}
Added:
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/task/browser/LoadBrowserPageTask.java
===================================================================
---
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/task/browser/LoadBrowserPageTask.java
(rev 0)
+++
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/task/browser/LoadBrowserPageTask.java 2011-12-22
08:51:56 UTC (rev 37514)
@@ -0,0 +1,27 @@
+package org.jboss.tools.portlet.ui.bot.task.browser;
+
+import org.jboss.tools.portlet.ui.bot.task.AbstractSWTTask;
+import org.jboss.tools.ui.bot.ext.SWTBotFactory;
+import org.jboss.tools.ui.bot.ext.parts.SWTBotBrowserExt;
+
+/**
+ * Displays the given page in internal browser.
+ *
+ * @author Lucia Jelinkova
+ *
+ */
+public class LoadBrowserPageTask extends AbstractSWTTask {
+
+ private String url;
+
+ public LoadBrowserPageTask(String url) {
+ super();
+ this.url = url;
+ }
+
+ @Override
+ public void perform() {
+ SWTBotBrowserExt browser = SWTBotFactory.getBot().browserExt();
+ browser.loadUrlToBrowser(url, SWTBotFactory.getBot());
+ }
+}
Modified:
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/AllTestsSuite.java
===================================================================
---
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/AllTestsSuite.java 2011-12-22
08:51:23 UTC (rev 37513)
+++
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/AllTestsSuite.java 2011-12-22
08:51:56 UTC (rev 37514)
@@ -2,6 +2,7 @@
import org.jboss.tools.portlet.ui.bot.test.core.CreateJavaPortlet;
import org.jboss.tools.portlet.ui.bot.test.core.CreateJavaPortletProject;
+import org.jboss.tools.portlet.ui.bot.test.core.LoadJavaPortletInBrowserRuntime4x;
import org.jboss.tools.portlet.ui.bot.test.core.RunJavaPortletOnServer;
import org.jboss.tools.portlet.ui.bot.test.example.JSFPortletExample;
import org.jboss.tools.portlet.ui.bot.test.example.JavaPortletExample;
@@ -9,6 +10,7 @@
import org.jboss.tools.portlet.ui.bot.test.jsf.CreateJSFPortletProject;
import org.jboss.tools.portlet.ui.bot.test.jsf.CreateJSFPortletRuntime4x;
import org.jboss.tools.portlet.ui.bot.test.jsf.CreateJSFPortletRuntime5x;
+import org.jboss.tools.portlet.ui.bot.test.jsf.LoadJSFPortletInBrowserRuntime4x;
import org.jboss.tools.portlet.ui.bot.test.jsf.RunJSFPortletOnServer;
import org.jboss.tools.portlet.ui.bot.test.seam.CreateSeamPortletProject;
import org.jboss.tools.portlet.ui.bot.test.seam.CreateSeamPortletRuntime4x;
@@ -21,11 +23,13 @@
@Suite.SuiteClasses({
CreateJavaPortletProject.class,
CreateJavaPortlet.class,
- RunJavaPortletOnServer.class,
+ RunJavaPortletOnServer.class,
+ LoadJavaPortletInBrowserRuntime4x.class,
CreateJSFPortletProject.class,
CreateJSFPortletRuntime4x.class,
CreateJSFPortletRuntime5x.class,
RunJSFPortletOnServer.class,
+ LoadJSFPortletInBrowserRuntime4x.class,
CreateSeamPortletProject.class,
CreateSeamPortletRuntime4x.class,
CreateSeamPortletRuntime5x.class,
Modified:
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/core/JavaPortletTestSuite.java
===================================================================
---
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/core/JavaPortletTestSuite.java 2011-12-22
08:51:23 UTC (rev 37513)
+++
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/core/JavaPortletTestSuite.java 2011-12-22
08:51:56 UTC (rev 37514)
@@ -8,7 +8,8 @@
@Suite.SuiteClasses({
CreateJavaPortletProject.class,
CreateJavaPortlet.class,
- RunJavaPortletOnServer.class
+ RunJavaPortletOnServer.class,
+ LoadJavaPortletInBrowserRuntime4x.class
})
public class JavaPortletTestSuite {
Added:
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/core/LoadJavaPortletInBrowserRuntime4x.java
===================================================================
---
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/core/LoadJavaPortletInBrowserRuntime4x.java
(rev 0)
+++
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/core/LoadJavaPortletInBrowserRuntime4x.java 2011-12-22
08:51:56 UTC (rev 37514)
@@ -0,0 +1,15 @@
+package org.jboss.tools.portlet.ui.bot.test.core;
+
+import static org.jboss.tools.portlet.ui.bot.entity.EntityFactory.portlet;
+
+import org.jboss.tools.portlet.ui.bot.entity.PortletDefinition;
+import
org.jboss.tools.portlet.ui.bot.test.template.LoadPortletInBrowser4xRuntimeTemplate;
+
+
+public class LoadJavaPortletInBrowserRuntime4x extends
LoadPortletInBrowser4xRuntimeTemplate {
+
+ @Override
+ protected PortletDefinition getPortletDefinition() {
+ return portlet(CreateJavaPortlet.CLASS_NAME);
+ }
+}
Modified:
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/jsf/JSFPortletTestSuite.java
===================================================================
---
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/jsf/JSFPortletTestSuite.java 2011-12-22
08:51:23 UTC (rev 37513)
+++
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/jsf/JSFPortletTestSuite.java 2011-12-22
08:51:56 UTC (rev 37514)
@@ -9,7 +9,8 @@
CreateJSFPortletProject.class,
CreateJSFPortletRuntime4x.class,
CreateJSFPortletRuntime5x.class,
- RunJSFPortletOnServer.class
+ RunJSFPortletOnServer.class,
+ LoadJSFPortletInBrowserRuntime4x.class
})
public class JSFPortletTestSuite {
Added:
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/jsf/LoadJSFPortletInBrowserRuntime4x.java
===================================================================
---
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/jsf/LoadJSFPortletInBrowserRuntime4x.java
(rev 0)
+++
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/jsf/LoadJSFPortletInBrowserRuntime4x.java 2011-12-22
08:51:56 UTC (rev 37514)
@@ -0,0 +1,15 @@
+package org.jboss.tools.portlet.ui.bot.test.jsf;
+
+import static org.jboss.tools.portlet.ui.bot.entity.EntityFactory.portlet;
+
+import org.jboss.tools.portlet.ui.bot.entity.PortletDefinition;
+import
org.jboss.tools.portlet.ui.bot.test.template.LoadPortletInBrowser4xRuntimeTemplate;
+
+
+public class LoadJSFPortletInBrowserRuntime4x extends
LoadPortletInBrowser4xRuntimeTemplate {
+
+ @Override
+ protected PortletDefinition getPortletDefinition() {
+ return portlet("JSFPortlet", "JBoss JSF Portlet");
+ }
+}
Added:
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/template/LoadPortletInBrowser4xRuntimeTemplate.java
===================================================================
---
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/template/LoadPortletInBrowser4xRuntimeTemplate.java
(rev 0)
+++
trunk/portlet/tests/org.jboss.tools.portlet.ui.bot.test/src/org/jboss/tools/portlet/ui/bot/test/template/LoadPortletInBrowser4xRuntimeTemplate.java 2011-12-22
08:51:56 UTC (rev 37514)
@@ -0,0 +1,27 @@
+package org.jboss.tools.portlet.ui.bot.test.template;
+
+import static
org.jboss.tools.portlet.ui.bot.matcher.factory.PortletMatchersFactory.canLoadAt4xRuntime;
+
+import org.jboss.tools.portlet.ui.bot.entity.PortletDefinition;
+import org.jboss.tools.portlet.ui.bot.test.testcase.SWTTaskBasedTestCase;
+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.Test;
+
+/**
+ * Tests that the portlet can be loaded in browser.
+ *
+ * @author Lucia Jelinkova
+ *
+ */
+@Require(clearWorkspace=false, clearProjects=false,
server=(a)Server(version="4.3", state=ServerState.Present))
+public abstract class LoadPortletInBrowser4xRuntimeTemplate extends SWTTaskBasedTestCase
{
+
+ protected abstract PortletDefinition getPortletDefinition();
+
+ @Test
+ public void testLoadPortlet(){
+ doAssertThatInWorkspace(getPortletDefinition(), canLoadAt4xRuntime());
+ }
+}