r1058 - in xwiki/trunk/src/test: . webunit webunit/suites webunit/suites/xwiki webunit/suites/xwiki/account webunit/suites/xwiki/adminLink webunit/suites/xwiki/control webunit/suites/xwiki/edit webunit/suites/xwiki/runner webunit/suites/xwiki/share webunit/suites/xwiki/userLink
Nguyen Thanh Huyen
huyennt at users.forge.objectweb.org
Fri Apr 28 11:27:30 CEST 2006
Author: huyennt
Date: 2006-04-28 11:27:29 +0200 (Fri, 28 Apr 2006)
New Revision: 1058
Added:
xwiki/trunk/src/test/webunit/
xwiki/trunk/src/test/webunit/Instruction
xwiki/trunk/src/test/webunit/suites/
xwiki/trunk/src/test/webunit/suites/xwiki/
xwiki/trunk/src/test/webunit/suites/xwiki/account/
xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckAccountSuite.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckCreateAccountSuite.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckLoginSuite.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckLogoutSuite.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/
xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiAdminCheckLinkMainPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkAdminPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkBlogPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkDocPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkEventCalendarPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkHomePage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkKnowledgeBasePage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkPhotoAlbumsPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkPresentationsPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkWhatNewPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/control/
xwiki/trunk/src/test/webunit/suites/xwiki/control/XwikiTestCategories.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/edit/
xwiki/trunk/src/test/webunit/suites/xwiki/edit/XwikiEditPageSuite.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/edit/XwikiNotAllowedEditSuite.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/runner/
xwiki/trunk/src/test/webunit/suites/xwiki/runner/XwikiAdminCheckLinkSuites.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/runner/XwikiUserCheckLinkSuites.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/share/
xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiCommonUnit.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiCreateAccountSuite.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiLoginSuite.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiLogoutSuite.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/userLink/
xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkBlogPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkDocPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkEventCalendarPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkHomePage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkKnowledgeBasePage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkPhotoAlbumsPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkPresentationsPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkWhatNewPage.groovy
xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiUserCheckLinkMainPage.groovy
Log:
Add webunit test to Xwiki
Added: xwiki/trunk/src/test/webunit/Instruction
===================================================================
--- xwiki/trunk/src/test/webunit/Instruction 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/Instruction 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,27 @@
+Instruction to run web unit test:
+ 1. Locate webunit-webui in tomcat.
+ Example: /home/exo/java/xwiki-tomcat/webapps/webunit-webui
+ 2. Build project and run tomcat
+ 3. Then type this path: http://localhost:8080/webunit-webui/controller
+ in browse to run web unit test
+ 4. Click on 'Config Test' button (2 people icon) and set:
+ Mark 3 checked boxes.
+ Interval: 0
+ URL: path lead to main page of Xwiki. Example: http://127.0.0.1:8080/xwiki/bin/view/Main/
+ Test Categories class: suites.xwiki.control.XwikiTestCategories
+ Groovy Script Location: directory contain test code. Example: /home/exo/java/projects/xwiki/src/test/webunit
+ Then click on 'Save'
+ 5. Click on 'Reload current page' button on browse to refesh
+ 6. Click 'Select Suite' button (last blue icon) on test control so that test suites appear on the right screen
+ 7. Click on 'Select' link to choose a suite then units of the suite will be listed on left screen
+ 8. Click on 'Next Unit' button to run test one unit a time then see result of each step in the right
+ or click on 'Run' button to run all units then click on 'Suite Summary' button (lamp icon) to check results: a runnable unit is red and in Summary its status is OK and req=1
+
+
+Other:
+ 1. Each test in a category (Account Suite, User Check Link Suite, Admin Check Link Suite, Edit Page Suite) can run alone.
+ 2. User Check Link Suites calls other suites in User Check Link Suite and Admin Check Link Suites calls suites in Admin
+ Check Link Suite. My objective is to make these suites run automatic.
+ 3. In left screen, the unit is marked '!!!' - it's only a comment, it's not an unit. After running, its status is TODO
+ Because the unit cannot run well in webunit test. In the file, you will see the unit is commented out and there's a
+ COMMENT above
Added: xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckAccountSuite.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckAccountSuite.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckAccountSuite.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,24 @@
+package suites.xwiki.account ;
+
+import suites.xwiki.account.XwikiCheckCreateAccountSuite;
+import suites.xwiki.account.XwikiCheckLoginSuite;
+import suites.xwiki.account.XwikiCheckLogoutSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * May 21, 2004
+ * @author: Tuan Nguyen
+ * @email: tuan08 at users.sourceforge.net
+ **/
+
+public class XwikiCheckAccountSuite extends WebUnitSuite {
+ public XwikiCheckAccountSuite() {
+ super("XwikiCheckAccountSuite", "Create a new account, then login and logout") ;
+ addWebSuite(new XwikiCheckCreateAccountSuite()) ;
+ String[] roles = ["user"] ;
+ addWebSuite(new XwikiCheckLoginSuite("#{client.name}", "#{client.name}", roles)) ;
+ addWebSuite(new XwikiCheckLogoutSuite()) ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckCreateAccountSuite.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckCreateAccountSuite.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckCreateAccountSuite.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,86 @@
+/***************************************************************************
+ * Copyright 2001-2003 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.account ;
+
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * May 21, 2004
+ * @author: Tuan Nguyen
+ * @email: tuan08 at users.sourceforge.net
+ * @version: $Id: NewAccountSuite.java,v 1.1 2004/10/11 23:27:29 tuan08 Exp $
+ **/
+
+public class XwikiCheckCreateAccountSuite extends WebUnitSuite {
+ static String DESC="Check create a new user account";
+ static String NAME="XwikiCheckCreateAccountSuite";
+
+ public XwikiCheckCreateAccountSuite() {
+ super(NAME, DESC);
+ addWebUnit(
+ new NewSessionUnit("NewSession", "Create new session and go to the home page for the first time")
+ );
+ addWebUnit(
+ new ClickLinkWithText("ClickRegister", "Click on 'Register'").
+ setTextLink("Register").
+ addValidator(new ExpectFormIdValidator("register"))
+ ) ;
+ addWebUnit(
+ new SubmitFormUnit("CreateBlankAccount", "All fields are blank").
+ setFormId("register").
+ setField("register_first_name", "").
+ setField("register_last_name", "").
+ setField("xwikiname", "").
+ setField("register_email", "").
+ setField("register_password", "").
+ setField("register2_password", "").
+ setField("register_company", "").
+ setField("register_city", "").
+ setField("register_country", "").
+ setField("register_blog", "").
+ setField("register_blogfeed", "").
+ setField("register_comment", "").
+ addValidator(new ExpectFormIdValidator("register"))
+ ) ;
+ addWebUnit(
+ new SubmitFormUnit("CreateNotSamePasswordAccount", "Two password are not same").
+ setFormId("register").
+ setField("register_first_name", "#{client.name}").
+ setField("register_last_name", "#{client.name}").
+ setField("xwikiname", "#{client.name}").
+ setField("register_email", "user at localhost.net").
+ setField("register_password", "client.password1").
+ setField("register2_password", "client.password2").
+ setField("register_company", "#{client.name}").
+ setField("register_city", "#{client.name}").
+ setField("register_country", "#{client.name}").
+ setField("register_blog", "#{client.name}").
+ setField("register_blogfeed", "#{client.name}").
+ setField("register_comment", "#{client.name}").
+ addValidator(new ExpectFormIdValidator("register"))
+ ) ;
+
+ addWebUnit(
+ new SubmitFormUnit("CreateValidAccount", "Create xwiki account").
+ setFormId("register").
+ setField("register_first_name", "#{client.name}").
+ setField("register_last_name", "#{client.name}").
+ setField("xwikiname", "#{client.name}").
+ setField("register_email", "user at localhost.net").
+ setField("register_password", "#{client.name}").
+ setField("register2_password", "#{client.name}").
+ setField("register_company", "#{client.name}").
+ setField("register_city", "#{client.name}").
+ setField("register_country", "#{client.name}").
+ setField("register_blog", "#{client.name}").
+ setField("register_blogfeed", "#{client.name}").
+ setField("register_comment", "#{client.name}").
+ addValidator(new ExpectFormIdValidator("newdoc"))
+ //addValidator(new ExpectTextValidator("The user '#{client.name}' has been correctly registered."))
+ ) ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckLoginSuite.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckLoginSuite.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckLoginSuite.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,58 @@
+package suites.xwiki.account ;
+
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+/**
+ * May 21, 2004
+ * @author: Tuan Nguyen
+ * @email: tuan08 at users.sourceforge.net
+ **/
+public class XwikiCheckLoginSuite extends WebUnitSuite {
+ public XwikiCheckLoginSuite() {
+ super("XwikiCheckLoginSuite", "Check login by new account") ;
+ String[] roles = ["user", "admin"] ;
+ init("admin", "admin", roles) ;
+ }
+
+ public XwikiCheckLoginSuite(String userName, String password, String[] roles) {
+ super("XwikiCheckLoginSuite", "Check login by new account") ;
+ init(userName, password, roles) ;
+ }
+
+ public void init(String userName, String password, String[] roles) {
+ addWebUnit(
+ new NewSessionUnit("NewSession", "Create new session and go to the home page for the first time")
+ );
+ addWebUnit(
+ new ClickLinkWithText("ClickLogin", "Click on 'Log-in'").
+ setTextLink("Log-in").
+ addValidator(new ExpectFormIdValidator("loginForm"))
+ ) ;
+ //User not registered or invalid password
+ addWebUnit(
+ new SubmitFormUnit("InvalidAccount", "Login with user name ${userName} and password ${password}").
+ setFormId("loginForm").
+ setField(j_username:userName).
+ setField(j_password:"invalidPassword").
+ addValidator(new ExpectFormIdValidator("loginForm"))
+ );
+ //Username and password is verified
+ addWebUnit(
+ new SubmitFormUnit("ValidAccount", "Login with user name ${userName} and password ${password}").
+ setFormId("loginForm").
+ setField(j_username:userName).
+ setField(j_password:password).
+ addValidator(new ExpectTextValidator("Hello"))
+ );
+/*
+ //what for???
+ for(role in roles) {
+ addWebUnit(
+ new AddRoleUnit("AddRole: ${role}", "Add user role to the web client").
+ setRoleToAdd(role)
+ );
+ }
+*/
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckLogoutSuite.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckLogoutSuite.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/account/XwikiCheckLogoutSuite.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,31 @@
+package suites.xwiki.account ;
+
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * May 21, 2004
+ * @author: Tuan Nguyen
+ * @email: tuan08 at users.sourceforge.net
+ **/
+
+public class XwikiCheckLogoutSuite extends WebUnitSuite {
+ public XwikiCheckLogoutSuite() {
+ super("XwikiCheckLogoutSuite", "Log out current page") ;
+ String COMMENT = null;
+ COMMENT ="WebUnit cannot catch 'logout' text link even URL";
+ addWebUnit(
+ new TODO("Cannot Logout",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ addWebUnit(
+ new ClickLinkWithText("Log-out", "Click on 'Log-out'").
+ setTextLink("Log-out").
+ addValidator(new ExpectNoTextValidator("Hello"))
+ ) ;
+ */
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiAdminCheckLinkMainPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiAdminCheckLinkMainPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiAdminCheckLinkMainPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,172 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.adminLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiLogoutSuite;
+import suites.xwiki.share.XwikiCommonUnit;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+
+public class XwikiAdminCheckLinkMainPage extends WebUnitSuite {
+ static String DESC = "Go to main page and click on links" ;
+ static String NAME = "XwikiAdminCheckLinkMainPage" ;
+ //String COMMENT = null;
+
+ public XwikiAdminCheckLinkMainPage() {
+ super(NAME, DESC) ;
+ //click on Home tab
+ addWebUnit(
+ new ClickLinkWithText("GoToHome", "Link to Home page").
+ setTextLink("Home").
+ addValidator(new ExpectTextValidator("Welcome to your Wiki"))
+ ) ;
+ //click on Blog tab
+ addWebUnit(
+ new ClickLinkWithText("GoToBlog", "Link to Blog page").
+ setTextLink("Blog").
+ addValidator(new ExpectTextValidator("Latest Articles"))
+ ) ;
+ //click on Knowledge Base tab
+ addWebUnit(
+ new ClickLinkWithText("GoToKnowledgeBase", "Link to Knowledge Base page").
+ setTextLink("Knowledge Base").
+ addValidator(new ExpectTextValidator("Wiki Knowledge Base"))
+ ) ;
+ //click on What'sNew tab
+ addWebUnit(
+ new ClickLinkWithText("GoToWhat'sNew", "Link to What's New page").
+ setTextLink("What's New").
+ addValidator(new ExpectTextValidator("What's New"))
+ ) ;
+ //click on Search tab
+ addWebUnit(
+ new ClickLinkWithText("GoToSearch", "Link to Search page").
+ setTextLink("Search").
+ addValidator(new ExpectTextValidator("Search on this Wiki"))
+ ) ;
+ //click on Admin tab
+ addWebUnit(
+ new ClickLinkWithText("GoToAdmin", "Link to Admin page").
+ setTextLink("Admin").
+ addValidator(new ExpectTextValidator("Administration"))
+ ) ;
+ //click on Doc tab
+ addWebUnit(
+ new ClickLinkWithText("GoToDoc", "Link to Doc page").
+ setTextLink("Doc").
+ addValidator(new ExpectTextValidator("Documentation"))
+ ) ;
+ //click on Register tab
+ addWebUnit(
+ new ClickLinkWithText("GoToRegister", "Link to register page").
+ setTextLink("Register").
+ addValidator(new ExpectTextValidator("Information about you"))
+ ) ;
+ //click on Photo Albums link
+ addWebUnit(
+ new ClickLinkWithText("GoToPhotoAlbums", "Link to Photo Albums page").
+ setTextLink("Photo Albums").
+ addValidator(new ExpectTextValidator("Photo Albums"))
+ ) ;
+ //click on Event Calendar link
+ addWebUnit(
+ new ClickLinkWithText("GoToEventCalendar", "Link to Event Calendar page").
+ setTextLink("Event Calendar").
+ addValidator(new ExpectTextValidator("Event Calendar"))
+ ) ;
+ //click on Presentation link
+ addWebUnit(
+ new ClickLinkWithText("GoToPresentation", "Link to Presentation page").
+ setTextLink("Presentations").
+ addValidator(new ExpectTextValidator("Presentation"))
+ ) ;
+ //click on News link(note: if being in home page, there are more than one 'News' word on screen so cannot setTextLink)
+ addWebUnit(
+ new ClickURLLinkUnit("GoToNews", "Link to News page").
+ setURL("/xwiki/bin/view/Blog/Category?category=News").
+ addValidator(new ExpectTextValidator("Entries for category News"))
+ ) ;
+ //click on Personal link
+ addWebUnit(
+ new ClickLinkWithText("GoToPersonal", "Link to Personal page").
+ setTextLink("Personal").
+ addValidator(new ExpectTextValidator("Entries for category Personal"))
+ ) ;
+ //click on Other link
+ addWebUnit(
+ new ClickLinkWithText("GoToOther", "Link to Other page").
+ setTextLink("Other").
+ addValidator(new ExpectTextValidator("Entries for category Other"))
+ ) ;
+ //click on Edit This Page link
+ addWebUnit(
+ new ClickLinkWithText("ClickEditThisPage", "Click on 'Edit This Page'").
+ setTextLink("Edit This Page")
+ //addValidator(new ExpectFormValidator("edit"))
+ ) ;
+ addWebUnit(
+ new ClickURLLinkUnit("BackToHome", "Link to Home page").
+ setURL("/xwiki/bin/view/Main/")
+ ) ;
+ //click on Add Comment link
+ addWebUnit(
+ new ClickLinkWithText("ClickAddComment", "Click on 'Add comment'").
+ setTextLink("Add comment").
+ addValidator(new ExpectTextValidator("New Comment"))
+ ) ;
+ //click on Add an attachment link ()
+ addWebUnit(
+ new ClickLinkWithText("ClickAddAnAttachment", "Click on 'Add an attachment'").
+ setTextLink("Add an attachment").
+ addValidator(new ExpectTextValidator("Filename"))
+ ) ;
+ //click on History link (it connect to another window that has no base link so make it the latest)
+ addWebUnit(
+ new ClickLinkWithText("ClickHistory", "Click on 'History'").
+ setTextLink("History").
+ addValidator(new ExpectTextValidator("Document History"))
+ ) ;
+ //PDF link is not supported to test by WebUnit
+ //click on 'more actions' then on 'Code'
+ addWebUnit(
+ new ClickLinkWithText("ClickMoreActions", "Click on 'More Actions'").
+ setTextLink("More Actions")
+ ) ;
+ addWebUnit(
+ new ClickLinkWithText("ClickCode", "Click on 'Code'").
+ setTextLink("Code")
+ );
+ //click on 'more actions' then on 'Xwiki syntax'
+ addWebUnit(
+ new ClickLinkWithText("ClickMoreActions", "Click on 'More Actions'").
+ setTextLink("More Actions")
+ ) ;
+ addWebUnit(
+ new ClickLinkWithText("ClickXwikiSyntax", "Click on 'Xwiki Syntax'").
+ setTextLink("Xwiki Syntax").
+ addValidator(new ExpectTextValidator("XWiki Syntax"))
+ );
+ //view user profile
+ addWebUnit(
+ new ClickLinkWithText("ViewUSerProfile", "View an user profile").
+ setTextLink("Xwiki Admin").
+ addValidator(new ExpectTextValidator("User Profile"))
+ );
+ addWebSuite(new XwikiLogoutSuite());
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["admin"] ;
+ return [new XwikiLoginSuite("admin","admin",roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkAdminPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkAdminPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkAdminPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,113 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.adminLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkAdminPage extends WebUnitSuite {
+ static String DESC = "Go to admin page and click on links" ;
+ static String NAME = "XwikiCheckLinkAdminPage" ;
+ String COMMENT = null;
+
+ public XwikiCheckLinkAdminPage() {
+ super(NAME, DESC) ;
+ init("/Admin") ;
+ }
+ public void init(path) {
+
+ //click on users link on User Administration
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickUsers", "Link to users on User Administration").
+ setURL("/xwiki/bin/view/XWiki/XWikiUsers").
+ addValidator(new ExpectTextValidator("Users"))
+ ) ;
+ //click on groups link on User Administration
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickGroups", "Link to groups on User Administration").
+ setURL("/xwiki/bin/view/XWiki/XWikiGroups").
+ addValidator(new ExpectTextValidator("Current XWiki Groups"))
+ ) ;
+
+ //click on Categories link on Blog
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCategories", "Link to Categories on Blog").
+ setURL("/xwiki/bin/view/Blog/Categories").
+ addValidator(new ExpectTextValidator("Categories"))
+ ) ;
+ COMMENT ="Article Sheet show code on screen";
+ addWebUnit(
+ new TODO("ArticleSheetCodeOnScreen(not comment out)!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ //click on Article Sheet link on Blog
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickArticleSheet", "Link to Article Sheet on Blog").
+ setURL("/xwiki/bin/view/XWiki/ArticleClassSheet")
+ ) ;
+
+ //click on Article Template link on Blog
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickArticleTemplate", "Link to Article Template on Blog").
+ setURL("/xwiki/bin/view/XWiki/ArticleClassTemplate")
+ ) ;
+ COMMENT ="Photo Album Sheet show code on screen";
+ addWebUnit(
+ new TODO("PhotoAlbumSheetCodeOnScreen(not comment out)!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ //click on Photo Album Sheet link on Photos (show code on screen)
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPhotoAlbumSheet", "Link to Photo Album Sheet on Photos").
+ setURL("/xwiki/bin/view/XWiki/PhotoAlbumClassSheet")
+ ) ;
+ //click on Photo Album Template link on Photos
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPhotoAlbumTemplate", "Link to Photo Album Template on Photos").
+ setURL("/xwiki/bin/view/XWiki/PhotoAlbumClassTemplate")
+ ) ;
+
+ //click on Menu link on Presentation
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickMenu", "Link to Menu on Presentation").
+ setURL("/xwiki/bin/view/XWiki/Menu")
+ ) ;
+ //click on Toolbar link on Presentation
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickToolbar", "Link to Toolbar on Presentation").
+ setURL("/xwiki/bin/view/XWiki/Toolbar")
+ ) ;
+ //click on Skin link on Presentation
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickSkin", "Link to Skin on Presentation").
+ setURL("/xwiki/bin/view/XWiki/MySkin")
+ ) ;
+
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["admin"] ;
+ return [new XwikiLoginSuite("admin","admin",roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkBlogPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkBlogPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkBlogPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,88 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.adminLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkBlogPage extends WebUnitSuite {
+ static String DESC = "Go to Blog page and click on links" ;
+ static String NAME = "XwikiCheckLinkBlogPage" ;
+ String COMMENT = null;
+ public XwikiCheckLinkBlogPage() {
+ super(NAME, DESC) ;
+ init("/Blog") ;
+ }
+ public void init(path) {
+ //click on Comment link on Launch of XWiki
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCommentLaunchOfXWiki", "Link to add comment form").
+ setURL("/xwiki/bin/view/Main/LaunchOfXWiki?xpage=comments")
+ ) ;
+ //click on continue reading link or permalink on Launch of XWiki
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPermalinkLaunchOfXWiki", "Link to continue reading on Launch of XWiki").
+ setURL("/xwiki/bin/view/Main/LaunchOfXWiki").
+ addValidator(new ExpectTextValidator("Launch of XWiki"))
+ ) ;
+ //click on Comment link on Another Article
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCommentAnotherArticle", "Link to add comment form").
+ setURL("/xwiki/bin/view/Blog/TestArticle?xpage=comments")
+ ) ;
+ //click on continue reading link or permalink on Another Article
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPermalinkAnotherArticle", "Link to continue reading on Another Article").
+ setURL("/xwiki/bin/view/Blog/TestArticle").
+ addValidator(new ExpectTextValidator("Another Article"))
+ ) ;
+ //click on Comment link on RSS Feed
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCommentRSSFeed", "Link to add comment form").
+ setURL("/xwiki/bin/view/Main/FilsRss?xpage=comments")
+ ) ;
+ goToPage(path);
+ COMMENT ="run well but wrong result screen";
+ addWebUnit(
+ new TODO("PermalinkGoToCommentForm!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //click on permalink on RSS Feed
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPermalinkRSSFeed", "Link to RSS Feed").
+ setURL("/xwiki/bin/view/Main/FilsRss").
+ addValidator(new ExpectTextValidator("RSS Feed"))
+ ) ;
+ */
+ //click on Xwiki admin link
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickXwikiAdmin", "Link to user profile of admin").
+ setURL("/xwiki/bin/view/XWiki/Admin").
+ addValidator(new ExpectTextValidator("User Profile"))
+ ) ;
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["admin"] ;
+ return [new XwikiLoginSuite("admin", "admin", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkDocPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkDocPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkDocPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,56 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.adminLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkDocPage extends WebUnitSuite {
+ static String DESC = "Go to Doc page and click on links" ;
+ static String NAME = "XwikiCheckLinkDocPage" ;
+ String COMMENT = null;
+
+ public XwikiCheckLinkDocPage() {
+ super(NAME, DESC) ;
+ init("/Doc") ;
+ }
+ public void init(path) {
+ goToPage(path);
+ COMMENT ="this link has the same text with a link and has the same URL with another so they confound WUT";
+ addWebUnit(
+ new TODO("ConfoundedSameTextLinkAndURL!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //click to see admin function but go to admin profile
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickAdministrationFunction", "Link to see admin function").
+ setURL("/xwiki/bin/view/XWiki").
+ addValidator(new ExpectTextValidator("Administration"))
+ ) ;
+ */
+ //click on search page link
+ addWebUnit(
+ new ClickLinkWithText("ClickSearchPageLink", "Link to search pages'").
+ setTextLink("search page").
+ addValidator(new ExpectTextValidator("Search on this Wiki"))
+ );
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["admin"] ;
+ return [new XwikiLoginSuite("admin", "admin", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkEventCalendarPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkEventCalendarPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkEventCalendarPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,69 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.adminLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkEventCalendarPage extends WebUnitSuite {
+ static String DESC = "Go to Event Calendar page and click on links" ;
+ static String NAME = "XwikiCheckLinkEventCalendarPage" ;
+ String COMMENT = null;
+
+ public XwikiCheckLinkEventCalendarPage() {
+ super(NAME, DESC) ;
+ init("/Event Calendar") ;
+ }
+ public void init(path) {
+ goToPage(path);
+ COMMENT ="Previous Month link and Next Month link wrong after some times";
+ addWebUnit(
+ new TODO("WrongShowMonth!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //click on Previous Month
+ goToPage(path);
+ addWebUnit(
+ new ClickLinkWithText("ClickPreviousMonth", "Link to Previous Month'").
+ setTextLink("Previous Month")
+ );
+ //click on Next Month
+ //goToPage(path);
+ addWebUnit(
+ new ClickLinkWithText("ClickNextMonth", "Link to Next Month'").
+ setTextLink("Next Month")
+ );
+ */
+ //click on edit object
+
+ addWebUnit(
+ new ClickLinkWithText("ClickEditOject", "Link to edit object'").
+ setTextLink("edit object").
+ addValidator(new ExpectTextValidator("Welcome to the objects editor. Choose an object to edit or add an object to the document."))
+ );
+ goToPage(path);
+ COMMENT ="NoFormIdToAddEvent";
+ addWebUnit(
+ new TODO("NoFormIdToAddEvent!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["admin"] ;
+ return [new XwikiLoginSuite("admin", "admin", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkHomePage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkHomePage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkHomePage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,105 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.adminLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkHomePage extends WebUnitSuite {
+ static String DESC = "Go to main page and click on links" ;
+ static String NAME = "XwikiCheckLinkHomePage" ;
+ String COMMENT = null;
+ public XwikiCheckLinkHomePage() {
+ super(NAME, DESC) ;
+ init("/Home") ;
+ }
+ public void init(path) {
+ goToPage(path) ;
+ COMMENT ="Not support connect to other pages";
+ addWebUnit(
+ new TODO("WUTNotSupportConnectOtherPages!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ addWebUnit(
+ new ClickURLLinkUnit("ClickXWikiBlog", "Link to XWiki Blog page").
+ setURL("http://www.xwiki.com/xwiki/bin/view/Blog/WebHome").
+ addValidator(new ExpectTextValidator("Welcome to the XWiki Blog"))
+ ) ;
+ addWebUnit(
+ new ClickLinkWithText("ClickXWikiBlog", "Link to XWiki Blog page").
+ setTextLink("XWiki Blog").
+ addValidator(new ExpectTextValidator("Welcome to the XWiki Blog"))
+ ) ;
+ */
+ //click on continue reading link or permalink on Launch of XWiki
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPermalinkLaunchOfXWiki", "Link to continue reading on Launch of XWiki").
+ setURL("/xwiki/bin/view/Main/LaunchOfXWiki").
+ addValidator(new ExpectTextValidator("Launch of XWiki"))
+ ) ;
+ //click on continue reading link or permalink on Another Article
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPermalinkAnotherArticle", "Link to continue reading on Another Article").
+ setURL("/xwiki/bin/view/Blog/TestArticle").
+ addValidator(new ExpectTextValidator("Another Article"))
+ ) ;
+ //click on Xwiki admin link
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickXwikiAdmin", "Link to user profile of admin").
+ setURL("/xwiki/bin/view/XWiki/Admin").
+ addValidator(new ExpectTextValidator("User Profile"))
+ ) ;
+ //click on Comment link on Launch of XWiki
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCommentLaunchOfXWiki", "Link to add comment form").
+ setURL("/xwiki/bin/view/Main/LaunchOfXWiki?xpage=comments")
+ ) ;
+ //click on Comment link on Another Article
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCommentAnotherArticle", "Link to add comment form").
+ setURL("/xwiki/bin/view/Blog/TestArticle?xpage=comments")
+ ) ;
+ //click on Comment link on RSS Feed
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCommentRSSFeed", "Link to add comment form").
+ setURL("/xwiki/bin/view/Main/FilsRss?xpage=comments")
+ ) ;
+ goToPage(path);
+ COMMENT ="run well but wrong result screen";
+ addWebUnit(
+ new TODO("PermalinkGoToCommentForm!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //click on permalink on RSS Feed
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPermalinkRSSFeed", "Link to RSS Feed").
+ setURL("/xwiki/bin/view/Main/FilsRss")
+ ) ;
+ */
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["admin"] ;
+ return [new XwikiLoginSuite("admin", "admin", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkKnowledgeBasePage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkKnowledgeBasePage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkKnowledgeBasePage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,49 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.adminLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkKnowledgeBasePage extends WebUnitSuite {
+ static String DESC = "Go to Knowledge Base page and click on links" ;
+ static String NAME = "XwikiCheckLinkKnowledgeBasePage" ;
+
+ public XwikiCheckLinkKnowledgeBasePage() {
+ super(NAME, DESC) ;
+ init("/Knowledge Base") ;
+ }
+ public void init(path) {
+ goToPage(path) ;
+ //click on ExampleLink1
+ addWebUnit(
+ new ClickURLLinkUnit("ClickExampleLink1", "Link to ExampleLink1").
+ setURL("/xwiki/bin/view/Main/ExampleLink1")
+ ) ;
+ //click on ExampleLink2
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickExampleLink2", "Link to ExampleLink2").
+ setURL("/xwiki/bin/edit/Main/Example+Link+2?parent=Main.KnowledgeBase")
+ ) ;
+ addWebUnit(
+ new ClickURLLinkUnit("GoHome", "Link to Home page").
+ setURL("/xwiki/bin/view/Main/")
+ ) ;
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["admin"] ;
+ return [new XwikiLoginSuite("admin", "admin", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkPhotoAlbumsPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkPhotoAlbumsPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkPhotoAlbumsPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,71 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.adminLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkPhotoAlbumsPage extends WebUnitSuite {
+ static String DESC = "Go to Photo Albums page and click on links" ;
+ static String NAME = "XwikiCheckLinkPhotoAlbumsPage" ;
+ String COMMENT = null;
+
+ public XwikiCheckLinkPhotoAlbumsPage() {
+ super(NAME, DESC) ;
+ init("/Photo Albums") ;
+ }
+ public void init(path) {
+ //click on Seychelles1999
+ goToPage(path);
+ addWebUnit(
+ new ClickLinkWithText("ClickSeychelles1999", "Link to Seychelles1999'").
+ setTextLink("Seychelles1999")
+ );
+ //click on Vietnam 2001
+ goToPage(path);
+ addWebUnit(
+ new ClickLinkWithText("ClickVietnam2001", "Link to Vietnam 2001'").
+ setTextLink("Vietnam 2001")
+ );
+ //click on Cat Photo Album
+ goToPage(path);
+ addWebUnit(
+ new ClickLinkWithText("ClickCatPhotoAlbum", "Link to Cat Photo Album'").
+ setTextLink("Cat Photo Album")
+ );
+ goToPage(path);
+ COMMENT ="2 same form id, 2 same text field";
+ addWebUnit(
+ new TODO("SameFormIdNoEffectCreateAlbum!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //set name and create new album (2 same form id, 2 same text field, run but wrong result screen)
+
+ addWebUnit(
+ new SubmitFormUnit("TypeNameAndAddAlbum", "Add this album").
+ setFormId("newdoc").
+ setAction("../../Photos/").
+ setField("title","my test album")
+ //addValidator(new ExpectTextValidator("You are not allowed to view this document or perform this action."))
+ //addValidator(new ExpectFormIdValidator("edit"))
+ ) ;
+ */
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["admin"] ;
+ return [new XwikiLoginSuite("admin", "admin", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkPresentationsPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkPresentationsPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkPresentationsPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,85 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.adminLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkPresentationsPage extends WebUnitSuite {
+ static String DESC = "Go to Presentations page and click on links" ;
+ static String NAME = "XwikiCheckLinkPresentationsPage" ;
+ String COMMENT = null;
+
+ public XwikiCheckLinkPresentationsPage() {
+ super(NAME, DESC) ;
+ init("/Presentations") ;
+ }
+ public void init(path) {
+ goToPage(path);
+ COMMENT ="AddPresentationStrangeResult";
+ addWebUnit(
+ new TODO("AddPresentationStrangeResult!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //set name and create a presentation (2 same form id)
+ goToPage(path);
+ addWebUnit(
+ new SubmitFormUnit("TypeNameAndAddPresentation", "Add this presentation").
+ setFormId("newdoc").
+ setAction("../../inline/Demo/Name of your presentation").
+ setField("name","my test presentation").
+ addValidator(new ExpectFormIdValidator("edit"))
+ ) ;
+ addWebUnit(
+ new ClickURLLinkUnit("BackToHome", "Back to home page").
+ setURL("/xwiki/bin/view/Main/")
+ ) ;
+ */
+ //click on preview to see existing presentation
+
+ addWebUnit(
+ new ClickLinkWithText("ClickPreview", "Click on preview").
+ setTextLink("Preview").
+ addValidator(new ExpectTextValidator("Presentation"))
+ );
+ //click on edit to modify existing presentation
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickEdit", "Click on edit").
+ setURL("/xwiki/bin/inline/Main/WhatIsAWiki").
+ addValidator(new ExpectFormIdValidator("edit"))
+ ) ;
+ goToPage(path);
+ COMMENT ="WUT cannot click on launch";
+ addWebUnit(
+ new TODO("WUTCanNotClickLaunch!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //click on launch
+
+ addWebUnit(
+ new ClickURLLinkUnit("ClickLaunch", "Click on launch").
+ setURL("/xwiki/bin/view/Main/WhatIsAWiki?xpage=s5b")
+ ) ;
+ */
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["admin"] ;
+ return [new XwikiLoginSuite("admin", "admin", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkWhatNewPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkWhatNewPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/adminLink/XwikiCheckLinkWhatNewPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,58 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.adminLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkWhatNewPage extends WebUnitSuite {
+ static String DESC = "Go to WhatNew page and click on links" ;
+ static String NAME = "XwikiCheckLinkWhatNewPage" ;
+ String COMMENT = null;
+
+ public XwikiCheckLinkWhatNewPage() {
+ super(NAME, DESC) ;
+ init("/What's New") ;
+ }
+ public void init(path) {
+ goToPage(path) ;
+ COMMENT ="Wrong function";
+ addWebUnit(
+ new TODO("ViewChangeIsWrong!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //click to view change
+ addWebUnit(
+ new ClickURLLinkUnit("ClickViewChange", "Link to view change").
+ setURL("/xwiki/bin/view/Main/WhatsNew?diff=1")
+ ) ;
+ */
+ addWebSuite(new XwikiCreateAccountSuite()) ;
+ String[] roles = ["user"] ;
+ addWebSuite(new XwikiLoginSuite("#{client.name}", "#{client.name}", roles)) ;
+ //check exist of new user link
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCurrentUser", "Click to see current user profile").
+ setURL("/xwiki/bin/view/XWiki/#{client.name}").
+ addValidator(new ExpectTextValidator("User Profile"))
+ ) ;
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["admin"] ;
+ return [new XwikiLoginSuite("admin", "admin", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/control/XwikiTestCategories.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/control/XwikiTestCategories.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/control/XwikiTestCategories.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,63 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.control;
+
+import org.exoplatform.webunit.webui.*;
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+public class XwikiTestCategories extends org.exoplatform.webunit.webui.TestCategories {
+
+ public XwikiTestCategories() {
+ List categories = getCategories() ;
+ TestCategoryDescription category = new TestCategoryDescription("User Check Link Suites") ;
+ category.addSuite(new TestSuiteDescription("suites.xwiki.runner.XwikiUserCheckLinkSuites", "Xwiki User Check Link Suites")) ;
+ categories.add(category) ;
+
+ category = new TestCategoryDescription("Admin Check Link Suites") ;
+ category.addSuite(new TestSuiteDescription("suites.xwiki.runner.XwikiAdminCheckLinkSuites", "Xwiki Admin Check Link Suites")) ;
+ categories.add(category) ;
+
+ category = new TestCategoryDescription("Account Suite") ;
+ category.addSuite(new TestSuiteDescription("suites.xwiki.share.XwikiLoginSuite", "Xwiki Login Suite")) ;
+ category.addSuite(new TestSuiteDescription("suites.xwiki.share.XwikiCreateAccountSuite", "Xwiki Create Account Suite")) ;
+ category.addSuite(new TestSuiteDescription("suites.xwiki.account.XwikiCheckLoginSuite", "Xwiki Check Login Suite")) ;
+ category.addSuite(new TestSuiteDescription("suites.xwiki.account.XwikiCheckCreateAccountSuite", "Xwiki Check Create Account Suite")) ;
+ category.addSuite(new TestSuiteDescription("suites.xwiki.account.XwikiCheckAccountSuite", "Xwiki Check Account Suite (wrong logout)")) ;
+ categories.add(category) ;
+
+ category = new TestCategoryDescription("User Check Link Suite") ;
+ category.addSuite(new TestSuiteDescription("suites.xwiki.userLink.XwikiUserCheckLinkMainPage", "Xwiki USer Check All Link Main Page Suite (Wrong Log-out)")) ;
+ category.addSuite(new TestSuiteDescription("suites.xwiki.userLink.XwikiCheckLinkHomePage", "Xwiki Check All Link In Home Page Suite"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.userLink.XwikiCheckLinkBlogPage", "Xwiki Check All Link In Blog Page Suite (result screen ?)"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.userLink.XwikiCheckLinkKnowledgeBasePage", "Xwiki Check All Link In Knowledge Base Page Suite"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.userLink.XwikiCheckLinkWhatNewPage", "Xwiki Check All Link In What New Page Suite (wrong function)"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.userLink.XwikiCheckLinkDocPage", "Xwiki Check All Link In Doc Page Suite (same text and same link)"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.userLink.XwikiCheckLinkPhotoAlbumsPage", "Xwiki Check All Link In Photo Albums Page Suite (same form id, same field name)"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.userLink.XwikiCheckLinkEventCalendarPage", "Xwiki Check All Link In Event Calendar Page Suite (no id to check add event)"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.userLink.XwikiCheckLinkPresentationsPage", "Xwiki Check All Link In Presentations Page Suite"));
+ categories.add(category) ;
+
+ category = new TestCategoryDescription("Admin Check Link Suite") ;
+ category.addSuite(new TestSuiteDescription("suites.xwiki.adminLink.XwikiAdminCheckLinkMainPage", "Xwiki Admin Check All Link Main Page Suite (Wrong Log-out)")) ;
+ category.addSuite(new TestSuiteDescription("suites.xwiki.adminLink.XwikiCheckLinkAdminPage", "Xwiki Check All Link In Admin Page Suite"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.adminLink.XwikiCheckLinkHomePage", "Xwiki Check All Link In Home Page Suite"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.adminLink.XwikiCheckLinkBlogPage", "Xwiki Check All Link In Blog Page Suite (result screen ?)"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.adminLink.XwikiCheckLinkKnowledgeBasePage", "Xwiki Check All Link In Knowledge Base Page Suite"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.adminLink.XwikiCheckLinkWhatNewPage", "Xwiki Check All Link In What New Page Suite (wrong function)"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.adminLink.XwikiCheckLinkDocPage", "Xwiki Check All Link In Doc Page Suite (same text and same link)"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.adminLink.XwikiCheckLinkPhotoAlbumsPage", "Xwiki Check All Link In Photo Albums Page Suite (same form id, same field name)"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.adminLink.XwikiCheckLinkEventCalendarPage", "Xwiki Check All Link In Event Calendar Page Suite (no id to check add event)"));
+ category.addSuite(new TestSuiteDescription("suites.xwiki.adminLink.XwikiCheckLinkPresentationsPage", "Xwiki Check All Link In Presentations Page Suite"));
+ categories.add(category) ;
+
+ category = new TestCategoryDescription("Edit Page Suite") ;
+ category.addSuite(new TestSuiteDescription("suites.xwiki.edit.XwikiEditPageSuite", "Xwiki Edit Page Suite(Wrong Edit Categories)")) ;
+ category.addSuite(new TestSuiteDescription("suites.xwiki.edit.XwikiNotAllowedEditSuite", "Xwiki Not Allow User Edit Suite (wrong add news)")) ;
+ categories.add(category) ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/edit/XwikiEditPageSuite.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/edit/XwikiEditPageSuite.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/edit/XwikiEditPageSuite.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,143 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.edit;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiLogoutSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+
+public class XwikiEditPageSuite extends WebUnitSuite {
+ static String DESC = "Go to main page and check edit page" ;
+ static String NAME = "XwikiEditPageSuite" ;
+ String COMMENT = null;
+
+ public XwikiEditPageSuite() {
+ super(NAME, DESC) ;
+ init("/Home") ;
+ }
+ public void init(path) {
+ goToPage(path) ;
+ COMMENT ="Add this news give really strange result";
+ addWebUnit(
+ new TODO("AddThisNewsBROKEN!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ addWebUnit(
+ new SubmitFormUnit("TypeTitleAndAddThisNews", "Add this news").
+ setFormId("newdoc").
+ setField("title","my test page").
+ setAction("../../inline/Main/")
+ //addValidator(new ExpectTextValidator("Enter your title here"))
+ ) ;
+
+ COMMENT ="Only search after adding id for form in screen, wrong if rollback database";
+ addWebUnit(
+ new TODO("NoSearchFormId!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ */
+ //search
+ addWebUnit(
+ new SubmitFormUnit("SearchText", "Search a text").
+ setFormId("searchForm").
+ setField("text","test").
+ //xwiki/bin/view/Main/WebSearch
+ addValidator(new ExpectTextValidator("Search on this Wiki"))
+ ) ;
+
+ //click on Edit this Page link then click on Cancel
+ addWebUnit(
+ new ClickLinkWithText("ClickEditThisPage", "Click on 'Edit this Page'").
+ setTextLink("Edit this Page").
+ addValidator(new ExpectFormIdValidator("edit"))
+ );
+ addWebUnit(
+ new ClickLinkWithText("ClickCancel", "Click on 'Cancel'").
+ setTextLink("Cancel").
+ addValidator(new ExpectTextValidator("Welcome to your Wiki"))
+ );
+
+ //click on Edit this Page link, set value to title field then click on Preview and Save
+ addWebUnit(
+ new ClickLinkWithText("ClickEditThisPage", "Click on 'Edit this Page'").
+ setTextLink("Edit this Page").
+ addValidator(new ExpectFormIdValidator("edit"))
+ );
+ //preview
+ addWebUnit(
+ new SubmitFormUnit("EditAndPreview", "Edit Form").
+ setFormId("edit").
+ setAction("/xwiki/bin/preview/Main/WebHome").
+ setField("title","my name is Huyen")
+ );
+ COMMENT ="WUT parse string and leave out space so make content page wrong";
+ addWebUnit(
+ new TODO("WrongSaveInWUT(not comment out)!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ //wrong save
+ //save
+ addWebUnit(
+ new SubmitFormUnit("SaveForm", "SaveForm").
+ setFormId("edit").
+ setAction("/xwiki/bin/save/Main/WebHome")
+ );
+ COMMENT ="Edit categories shows code in screen";
+ addWebUnit(
+ new TODO("EditCategoriesWrongInMyPC!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //click on Edit Categories then Cancel (when click on edit categories, it shows code in screen !!!)
+ addWebUnit(
+ new ClickLinkWithText("ClickEditCategories", "Click on 'Edit Categories'").
+ setTextLink("Edit Categories").
+ addValidator(new ExpectFormIdValidator("edit")).
+ addValidator(new ExpectTextValidator("Categories"))
+ ) ;
+ addWebUnit(
+ new ClickLinkWithText("ClickCancel", "Click on 'Cancel'").
+ setTextLink("Cancel").
+ addValidator(new ExpectNoTextValidator("Cancel"))
+ ) ;
+ //click on Edit Categories (it cannot find field, name of the field change )
+ addWebUnit(
+ new ClickLinkWithText("ClickEditCategories", "Click on 'Edit Categories'").
+ setTextLink("Edit Categories").
+ addValidator(new ExpectFormIdValidator("edit")).
+ addValidator(new ExpectTextValidator("Categories"))
+ ) ;
+ addWebUnit(
+ new SubmitFormUnit("EditAndClickPreview", "Edit Form").
+ setFormId("edit").
+ setField("Blog.Categories_0_name","test")
+ //setField("Blog.Categories_4_description","test")//Blog.Categories_6_description
+ );
+ addWebUnit(
+ new SubmitFormUnit("SaveForm", "Save Form").
+ setFormId("edit").
+ addValidator(new ExpectTextValidator("test"))
+ );
+ */
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["admin"] ;
+ return [new XwikiLoginSuite("admin","admin",roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/edit/XwikiNotAllowedEditSuite.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/edit/XwikiNotAllowedEditSuite.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/edit/XwikiNotAllowedEditSuite.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,95 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.edit;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiNotAllowedEditSuite extends WebUnitSuite {
+ //static java.util.Date date = new java.util.Date() ;
+ //static String uid = date.toString() + date.hashCode() ;
+
+ static String DESC = "Go to main page and check edit page" ;
+ static String NAME = "XwikiNotAllowedEditSuite" ;
+ String COMMENT = null;
+
+ public XwikiNotAllowedEditSuite() {
+ super(NAME, DESC) ;
+
+ //create new name page then click on 'Add this news'
+ addWebUnit(
+ new SubmitFormUnit("TypeTitleAndAddThisNews", "Add this news").
+ setFormId("newdoc").
+ setField("title","my test page").
+ setAction("../../inline/Main/").
+ addValidator(new ExpectTextValidator("You are not allowed to view this document or perform this action."))
+ ) ;
+ //go back home
+ addWebUnit(
+ new ClickURLLinkUnit("GoHome", "Link to Home").
+ setURL("/xwiki/bin/view/Main/")
+ ) ;
+ //click on icon to edit menu
+ addWebUnit(
+ new ClickURLLinkUnit("ClickEditMenu", "Click on icon to edit menu").
+ setURL("/xwiki/bin/edit/XWiki/Menu").
+ addValidator(new ExpectTextValidator("You are not allowed to view this document or perform this action."))
+ ) ;
+ //go back home
+ addWebUnit(
+ new ClickURLLinkUnit("GoHome", "Link to Home").
+ setURL("/xwiki/bin/view/Main/")
+ ) ;
+ COMMENT ="Edit categories shows code on screen";
+ addWebUnit(
+ new TODO("EditCategoriesCodeInScreen(only my pc)!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //click on 'Edit Categories' link
+ addWebUnit(
+ new ClickURLLinkUnit("ClickEditCategories", "Click on icon to edit Categories").
+ setURL("/xwiki/bin/inline/Blog/Categories").
+ addValidator(new ExpectTextValidator("You are not allowed to view this document or perform this action."))
+ ) ;
+ //Click on 'Add a category' link
+ addWebUnit(
+ new ClickLinkWithText("ClickAddCategory", "Click on 'Add a category' link").
+ setTextLink("Add a category")
+ );
+ //go back home
+ addWebUnit(
+ new ClickURLLinkUnit("GoHome", "Link to Home").
+ setURL("/xwiki/bin/view/Main/")
+ ) ;
+ */
+ //click on icon to edit toolbar
+ addWebUnit(
+ new ClickURLLinkUnit("ClickEditToolbar", "Click on icon to edit toolbar").
+ setURL("/xwiki/bin/edit/XWiki/Toolbar").
+ addValidator(new ExpectTextValidator("You are not allowed to view this document or perform this action."))
+ ) ;
+ /*
+ //go back home
+ addWebUnit(
+ new ClickURLLinkUnit("GoHome", "Link to Home").
+ setURL("/xwiki/bin/view/Main/")
+ ) ;
+ */
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["user"] ;
+ return [new XwikiLoginSuite("test","test",roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/runner/XwikiAdminCheckLinkSuites.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/runner/XwikiAdminCheckLinkSuites.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/runner/XwikiAdminCheckLinkSuites.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,40 @@
+/***************************************************************************
+ * Copyright 2001-2003 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.runner;
+
+import suites.xwiki.adminLink.*;
+import suites.xwiki.share.*;
+import suites.xwiki.account.*;
+import suites.xwiki.edit.*;
+
+import org.exoplatform.webunit.*;
+
+/**
+ * Created by The eXo Platform SARL
+ * Author : Hoa Pham
+ * hoapham at exoplatform.com,phamvuxuanhoa at yahoo.com
+ * Nov 8, 2005
+**/
+public class XwikiAdminCheckLinkSuites extends TestSuites {
+ public XwikiAdminCheckLinkSuites() {
+
+ String[] roles=["admin"];
+ addSuite(new XwikiLoginSuite("admin", "admin", roles)) ;
+ addSuite(new XwikiAdminCheckLinkMainPage()) ;
+ addSuite(new XwikiCheckLinkHomePage()) ;
+ addSuite(new XwikiCheckLinkBlogPage()) ;
+ addSuite(new XwikiCheckLinkKnowledgeBasePage()) ;
+ addSuite(new XwikiCheckLinkWhatNewPage()) ;
+ //check link in What New must login with an user
+ addSuite(new XwikiLoginSuite("admin", "admin", roles)) ;
+ addSuite(new XwikiCheckLinkAdminPage()) ;
+ addSuite(new XwikiCheckLinkDocPage()) ;
+ addSuite(new XwikiCheckLinkPhotoAlbumsPage()) ;
+ addSuite(new XwikiCheckLinkEventCalendarPage()) ;
+ addSuite(new XwikiCheckLinkPresentationsPage()) ;
+ //addSuite(new XwikiEditPageSuite());
+ addSuite(new XwikiLogoutSuite());
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/runner/XwikiUserCheckLinkSuites.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/runner/XwikiUserCheckLinkSuites.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/runner/XwikiUserCheckLinkSuites.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,37 @@
+/***************************************************************************
+ * Copyright 2001-2003 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.runner;
+
+import suites.xwiki.userLink.*;
+import suites.xwiki.share.*;
+import suites.xwiki.account.*;
+import suites.xwiki.edit.*;
+
+import org.exoplatform.webunit.*;
+
+/**
+ * Created by The eXo Platform SARL
+ * Author : Hoa Pham
+ * hoapham at exoplatform.com,phamvuxuanhoa at yahoo.com
+ * Nov 8, 2005
+**/
+public class XwikiUserCheckLinkSuites extends TestSuites {
+ public XwikiUserCheckLinkSuites() {
+ addSuite(new XwikiCreateAccountSuite());
+ String[] roles=["user"];
+ addSuite(new XwikiLoginSuite("#{client.name}", "#{client.name}", roles)) ;
+ addSuite(new XwikiUserCheckLinkMainPage()) ;
+ addSuite(new XwikiCheckLinkHomePage()) ;
+ addSuite(new XwikiCheckLinkBlogPage()) ;
+ addSuite(new XwikiCheckLinkKnowledgeBasePage()) ;
+ addSuite(new XwikiCheckLinkWhatNewPage()) ;
+ addSuite(new XwikiCheckLinkDocPage()) ;
+ addSuite(new XwikiCheckLinkPhotoAlbumsPage()) ;
+ addSuite(new XwikiCheckLinkEventCalendarPage()) ;
+ addSuite(new XwikiCheckLinkPresentationsPage()) ;
+ addSuite(new XwikiNotAllowedEditSuite());
+ addSuite(new XwikiLogoutSuite());
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiCommonUnit.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiCommonUnit.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiCommonUnit.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,91 @@
+/**************************************************************************
+ * Copyright 2001-2003 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.share ;
+
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+/**
+ * May 21, 2004
+ * @author: Tuan Nguyen
+ * @email: tuan08 at users.sourceforge.net
+ * @version: $Id: CommonUnit.java,v 1.2 2004/10/21 15:21:49 tuan08 Exp $
+ **/
+public class XwikiCommonUnit extends WebUnitSuite {
+
+ final static public WebUnit GO_HOME_UNIT =
+ new ClickURLLinkUnit("GoHome", "Link to Home page").
+ setURL("/xwiki/bin/view/Main/")
+ /*
+ new ClickLinkWithText("GoToHome", "Tell the web client click on the Home tab").
+ setTextLink("Home") ;
+ */
+
+ final static public WebUnit GO_BLOG_UNIT =
+ new ClickLinkWithText("GoToBlog", "Tell the web client click on the Blog tab").
+ setTextLink("Blog") ;
+
+ final static public WebUnit GO_KNOWLEDGE_BASE_UNIT =
+ new ClickLinkWithText("GoToKnowledgeBase", "Tell the web client click on the Knowledge Base tab").
+ setTextLink("Knowledge Base") ;
+
+ final static public WebUnit GO_WHAT'SNEW_UNIT =
+ new ClickLinkWithText("GoToWhat'sNew", "Tell the web client click on the What's New tab").
+ setTextLink("What's New") ;
+
+ final static public WebUnit GO_SEARCH_UNIT =
+ new ClickLinkWithText("GoToSearch", "Tell the web client click on the Search tab").
+ setTextLink("Search") ;
+
+ final static public WebUnit GO_ADMIN_UNIT =
+ new ClickLinkWithText("GoToAdmin", "Tell the web client click on the Admin tab").
+ setTextLink("Admin") ;
+
+ final static public WebUnit GO_DOC_UNIT =
+ new ClickLinkWithText("GoToDoc", "Tell the web client click on the Doc tab").
+ setTextLink("Doc") ;
+
+ final static public WebUnit GO_REGISTER_UNIT =
+ new ClickLinkWithText("GoToRegister", "Tell the web client click on the Register tab").
+ setTextLink("Register") ;
+
+ final static public WebUnit GO_PHOTOALBUMS_UNIT =
+ new ClickLinkWithText("GoToPhotoAlbums", "Tell the web client click on the Photo Albums link").
+ setTextLink("Photo Albums") ;
+
+ final static public WebUnit GO_EVENT_CALENDAR_UNIT =
+ new ClickLinkWithText("GoToEventCalendar", "Tell the web client click on the Event Calendar link").
+ setTextLink("Event Calendar") ;
+
+ final static public WebUnit GO_PRESENTATION_UNIT =
+ new ClickLinkWithText("GoToPresentation", "Tell the web client click on the Presentation link").
+ setTextLink("Presentation") ;
+
+ final static public WebUnit CLICK_NEWS =
+ new ClickURLLinkUnit("ClickNews", "Tell the web client click on News link").
+ setURL("/xwiki/bin/view/Blog/Category?category=News").
+ addValidator(new ExpectTextValidator("Entries for category News"));
+
+ final static public WebUnit GO_PERSONAL_UNIT =
+ new ClickLinkWithText("GoToPersonal", "Tell the web client click on the Personal link").
+ setTextLink("Personal") ;
+
+ final static public WebUnit GO_OTHER_UNIT =
+ new ClickLinkWithText("GoToOther", "Tell the web client click on the Other link").
+ setTextLink("Other") ;
+
+ final static public WebUnit GO_PERSONAL_UNIT =
+ new ClickLinkWithText("GoToPersonal", "Tell the web client click on the Personal link").
+ setTextLink("Personal") ;
+
+ static public void addClickUnits(WebUnitSuite suite , String path) {
+ String[] links = path.split("/") ;
+ for(text in links) {
+ suite.addWebUnit(new ClickLinkWithText("Click:" + text, "Go to " + text + "page").
+ setTextLink(text)) ;
+ }
+ }
+
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiCreateAccountSuite.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiCreateAccountSuite.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiCreateAccountSuite.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,67 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.share;
+
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+
+public class XwikiCreateAccountSuite extends WebUnitSuite {
+ static String DESC = "Go to xwiki register page and create an account" ;
+ static String NAME = "XwikiCreateAccountSuite" ;
+ public XwikiCreateAccountSuite() {
+ super(NAME, DESC) ;
+ addWebUnit(
+ new NewSessionUnit("NewSession", "Create new session and go to the home page for the first time")
+ );
+ addWebUnit(
+ new ClickLinkWithText("Register", "Click on 'register'").
+ setTextLink("register").
+ addValidator(new ExpectFormIdValidator("register"))
+ ) ;
+ addWebUnit(
+ new SubmitFormUnit("CreateNewAccount", "Create xwiki account").
+ setFormId("register").
+ setField("register_first_name", "#{client.name}").
+ setField("register_last_name", "#{client.name}").
+ setField("xwikiname", "#{client.name}").
+ setField("register_email", "user at localhost.net").
+ setField("register_password", "#{client.name}").
+ setField("register2_password", "#{client.name}").
+ setField("register_company", "#{client.name}").
+ setField("register_city", "#{client.name}").
+ setField("register_country", "#{client.name}").
+ setField("register_blog", "#{client.name}").
+ setField("register_blogfeed", "#{client.name}").
+ setField("register_comment", "#{client.name}")
+ //addValidator(new ExpectTextValidator("The user '#{client.name}' has been correctly registered."))
+ ) ;
+ }
+ static WebUnit createNewAccountUnit(String userName , String password) {
+ WebUnit unit =
+ setFormId("register").
+ setField("register_first_name", "#{client.name}").
+ setField("register_last_name", "#{client.name}").
+ setField("xwikiname", "#{client.name}").
+ setField("register_email", "user at localhost.net").
+ setField("register_password", "#{client.name}").
+ setField("register2_password", "#{client.name}").
+ setField("register_company", "#{client.name}").
+ setField("register_city", "#{client.name}").
+ setField("register_country", "#{client.name}").
+ setField("register_blog", "#{client.name}").
+ setField("register_blogfeed", "#{client.name}").
+ setField("register_comment", "#{client.name}")
+ //addValidator(new ExpectTextValidator("The user '#{client.name}' has been correctly registered."))
+ return unit ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiLoginSuite.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiLoginSuite.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiLoginSuite.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,51 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.share;
+
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+public class XwikiLoginSuite extends WebUnitSuite {
+ public XwikiLoginSuite() {
+ super("XwikiLoginSuite", "Go to the home page and login, using web client name for user name and password") ;
+ String[] roles = ["user","admin"] ;
+ init("admin", "admin", roles) ;
+ }
+ public XwikiLoginSuite(String userName, String password, String[] roles) {
+ super("UserLoginSuite", "Go to the home page and login, using web client name for user name and password") ;
+ init(userName, password, roles) ;
+ }
+ public void init(String userName, String password, String[] roles) {
+ addWebUnit(
+ new NewSessionUnit("NewSession", "Create new session and go to the home page for the first time")
+ );
+ addWebUnit(
+ new ClickLinkWithText("ClickLogin", "Click on 'Log-in'").
+ setTextLink("Log-in").
+ addValidator(new ExpectFormIdValidator("loginForm"))
+ ) ;
+ addWebUnit(
+ new SubmitFormUnit("LoginWithUsername", "Login with username").
+ setFormId("loginForm").
+ setField("j_username", userName).
+ setField("j_password", password).
+ addValidator(new ExpectTextValidator("Hello"))
+ ) ;
+/*
+ for(role in roles) {
+ addWebUnit(
+ new AddRoleUnit("AddRole: ${role}", "Add user role to the web client").
+ setRoleToAdd(role)
+ );
+ }
+*/
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiLogoutSuite.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiLogoutSuite.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/share/XwikiLogoutSuite.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,34 @@
+package suites.xwiki.share ;
+
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * May 21, 2004
+ * @author: Tuan Nguyen
+ * @email: tuan08 at users.sourceforge.net
+ **/
+
+public class XwikiLogoutSuite extends WebUnitSuite {
+ public XwikiLogoutSuite() {
+ super("XwikiLogoutSuite","Log out current page");
+ String COMMENT = null;
+ COMMENT ="WebUnit cannot catch 'logout' text link even URL";
+ addWebUnit(
+ new TODO("WebUnitCannotCatch'Logout'LinkEvenURL!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ addWebUnit(
+ new ClickLink("Logout", "Click on 'Log-out'").
+ setTextLink("Log-out").
+ addValidator(new ExpectTextValidator("Log-in")).
+ addValidator(new ExpectNoTextValidator("Hello"))
+ );
+ */
+ }
+}
+
+
Added: xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkBlogPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkBlogPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkBlogPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,88 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.userLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkBlogPage extends WebUnitSuite {
+ static String DESC = "Go to Blog page and click on links" ;
+ static String NAME = "XwikiCheckLinkBlogPage" ;
+ String COMMENT = null;
+ public XwikiCheckLinkBlogPage() {
+ super(NAME, DESC) ;
+ init("/Blog") ;
+ }
+ public void init(path) {
+ //click on Comment link on Launch of XWiki
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCommentLaunchOfXWiki", "Link to add comment form").
+ setURL("/xwiki/bin/view/Main/LaunchOfXWiki?xpage=comments")
+ ) ;
+ //click on continue reading link or permalink on Launch of XWiki
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPermalinkLaunchOfXWiki", "Link to continue reading on Launch of XWiki").
+ setURL("/xwiki/bin/view/Main/LaunchOfXWiki").
+ addValidator(new ExpectTextValidator("Launch of XWiki"))
+ ) ;
+ //click on Comment link on Another Article
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCommentAnotherArticle", "Link to add comment form").
+ setURL("/xwiki/bin/view/Blog/TestArticle?xpage=comments")
+ ) ;
+ //click on continue reading link or permalink on Another Article
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPermalinkAnotherArticle", "Link to continue reading on Another Article").
+ setURL("/xwiki/bin/view/Blog/TestArticle").
+ addValidator(new ExpectTextValidator("Another Article"))
+ ) ;
+ //click on Comment link on RSS Feed
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCommentRSSFeed", "Link to add comment form").
+ setURL("/xwiki/bin/view/Main/FilsRss?xpage=comments")
+ ) ;
+ goToPage(path);
+ COMMENT ="run well but wrong result screen";
+ addWebUnit(
+ new TODO("PermalinkGoToCommentForm!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //click on permalink on RSS Feed (result screen is also add comment)
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPermalinkRSSFeed", "Link to RSS Feed").
+ setURL("/xwiki/bin/view/Main/FilsRss").
+ addValidator(new ExpectTextValidator("RSS Feed"))
+ ) ;
+ */
+ //click on Xwiki admin link
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickXwikiAdmin", "Link to user profile of admin").
+ setURL("/xwiki/bin/view/XWiki/Admin").
+ addValidator(new ExpectTextValidator("User Profile"))
+ ) ;
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["user"] ;
+ return [new XwikiCreateAccountSuite(), new XwikiLoginSuite("#{client.name}", "#{client.name}", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkDocPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkDocPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkDocPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,57 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.userLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkDocPage extends WebUnitSuite {
+ static String DESC = "Go to Doc page and click on links" ;
+ static String NAME = "XwikiCheckLinkDocPage" ;
+ String COMMENT = null;
+
+ public XwikiCheckLinkDocPage() {
+ super(NAME, DESC) ;
+ init("/Doc") ;
+ }
+ public void init(path) {
+ goToPage(path);
+ COMMENT ="this link has the same text with a link and has the same URL with another so they confound WUT";
+ addWebUnit(
+ new TODO("ConfoundedSameTextLinkAndURL!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //click to see admin function but go to admin profile
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickAdministrationFunction", "Link to see admin function").
+ setURL("/xwiki/bin/view/XWiki").
+ addValidator(new ExpectTextValidator("Administration"))
+ ) ;
+ */
+ //click on search page link
+
+ addWebUnit(
+ new ClickLinkWithText("ClickSearchPageLink", "Link to search pages'").
+ setTextLink("search page").
+ addValidator(new ExpectTextValidator("Search on this Wiki"))
+ );
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["user"] ;
+ return [new XwikiCreateAccountSuite(), new XwikiLoginSuite("#{client.name}", "#{client.name}", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkEventCalendarPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkEventCalendarPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkEventCalendarPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,69 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.userLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkEventCalendarPage extends WebUnitSuite {
+ static String DESC = "Go to Event Calendar page and click on links" ;
+ static String NAME = "XwikiCheckLinkEventCalendarPage" ;
+ String COMMENT = null;
+
+ public XwikiCheckLinkEventCalendarPage() {
+ super(NAME, DESC) ;
+ init("/Event Calendar") ;
+ }
+ public void init(path) {
+ goToPage(path);
+ COMMENT ="Previous Month link and Next Month link wrong after some times";
+ addWebUnit(
+ new TODO("WrongShowMonth!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //click on Previous Month
+ goToPage(path);
+ addWebUnit(
+ new ClickLinkWithText("ClickPreviousMonth", "Link to Previous Month'").
+ setTextLink("Previous Month")
+ );
+ //click on Next Month
+ //goToPage(path);
+ addWebUnit(
+ new ClickLinkWithText("ClickNextMonth", "Link to Next Month'").
+ setTextLink("Next Month")
+ );
+ */
+ //click on edit object
+
+ addWebUnit(
+ new ClickLinkWithText("ClickEditOject", "Link to edit object'").
+ setTextLink("edit object").
+ addValidator(new ExpectTextValidator("Welcome to the objects editor. Choose an object to edit or add an object to the document."))
+ );
+ goToPage(path);
+ COMMENT ="NoFormIdToAddEvent";
+ addWebUnit(
+ new TODO("NoFormIdToAddEvent!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["user"] ;
+ return [new XwikiCreateAccountSuite(), new XwikiLoginSuite("#{client.name}", "#{client.name}", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkHomePage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkHomePage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkHomePage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,105 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.userLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkHomePage extends WebUnitSuite {
+ static String DESC = "Go to main page and click on links" ;
+ static String NAME = "XwikiCheckLinkHomePage" ;
+ String COMMENT = null;
+ public XwikiCheckLinkHomePage() {
+ super(NAME, DESC) ;
+ init("/Home") ;
+ }
+ public void init(path) {
+ goToPage(path) ;
+ COMMENT ="Not support connect to other pages";
+ addWebUnit(
+ new TODO("WUTNotSupportConnectOtherPages!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ addWebUnit(
+ new ClickURLLinkUnit("ClickXWikiBlog", "Link to XWiki Blog page").
+ setURL("http://www.xwiki.com/xwiki/bin/view/Blog/WebHome").
+ addValidator(new ExpectTextValidator("Welcome to the XWiki Blog"))
+ ) ;
+ addWebUnit(
+ new ClickLinkWithText("ClickXWikiBlog", "Link to XWiki Blog page").
+ setTextLink("XWiki Blog").
+ addValidator(new ExpectTextValidator("Welcome to the XWiki Blog"))
+ ) ;
+ */
+ //click on continue reading link or permalink on Launch of XWiki
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPermalinkLaunchOfXWiki", "Link to continue reading on Launch of XWiki").
+ setURL("/xwiki/bin/view/Main/LaunchOfXWiki").
+ addValidator(new ExpectTextValidator("Launch of XWiki"))
+ ) ;
+ //click on continue reading link or permalink on Another Article
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPermalinkAnotherArticle", "Link to continue reading on Another Article").
+ setURL("/xwiki/bin/view/Blog/TestArticle").
+ addValidator(new ExpectTextValidator("Another Article"))
+ ) ;
+ //click on Xwiki admin link
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickXwikiAdmin", "Link to user profile of admin").
+ setURL("/xwiki/bin/view/XWiki/Admin").
+ addValidator(new ExpectTextValidator("User Profile"))
+ ) ;
+ //click on Comment link on Launch of XWiki
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCommentLaunchOfXWiki", "Link to add comment form").
+ setURL("/xwiki/bin/view/Main/LaunchOfXWiki?xpage=comments")
+ ) ;
+ //click on Comment link on Another Article
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCommentAnotherArticle", "Link to add comment form").
+ setURL("/xwiki/bin/view/Blog/TestArticle?xpage=comments")
+ ) ;
+ //click on Comment link on RSS Feed
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCommentRSSFeed", "Link to add comment form").
+ setURL("/xwiki/bin/view/Main/FilsRss?xpage=comments")
+ ) ;
+ COMMENT ="run well but wrong result screen";
+ addWebUnit(
+ new TODO("PermalinkGoToCommentForm!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ goToPage(path);
+ /*
+ //click on permalink on RSS Feed
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickPermalinkRSSFeed", "Link to RSS Feed").
+ setURL("/xwiki/bin/view/Main/FilsRss")
+ ) ;
+ */
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["user"] ;
+ return [new XwikiCreateAccountSuite(), new XwikiLoginSuite("#{client.name}", "#{client.name}", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkKnowledgeBasePage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkKnowledgeBasePage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkKnowledgeBasePage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,49 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.userLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkKnowledgeBasePage extends WebUnitSuite {
+ static String DESC = "Go to Knowledge Base page and click on links" ;
+ static String NAME = "XwikiCheckLinkKnowledgeBasePage" ;
+
+ public XwikiCheckLinkKnowledgeBasePage() {
+ super(NAME, DESC) ;
+ init("/Knowledge Base") ;
+ }
+ public void init(path) {
+ goToPage(path) ;
+ //click on ExampleLink1
+ addWebUnit(
+ new ClickURLLinkUnit("ClickExampleLink1", "Link to ExampleLink1").
+ setURL("/xwiki/bin/view/Main/ExampleLink1")
+ ) ;
+ //click on ExampleLink2
+ goToPage(path);
+ addWebUnit(
+ new ClickURLLinkUnit("ClickExampleLink2", "Link to ExampleLink2").
+ setURL("/xwiki/bin/edit/Main/Example+Link+2?parent=Main.KnowledgeBase")
+ ) ;
+ addWebUnit(
+ new ClickURLLinkUnit("GoHome", "Link to Home page").
+ setURL("/xwiki/bin/view/Main/")
+ ) ;
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["user"] ;
+ return [new XwikiCreateAccountSuite(), new XwikiLoginSuite("#{client.name}", "#{client.name}", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkPhotoAlbumsPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkPhotoAlbumsPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkPhotoAlbumsPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,71 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.userLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkPhotoAlbumsPage extends WebUnitSuite {
+ static String DESC = "Go to Photo Albums page and click on links" ;
+ static String NAME = "XwikiCheckLinkPhotoAlbumsPage" ;
+ String COMMENT = null;
+
+ public XwikiCheckLinkPhotoAlbumsPage() {
+ super(NAME, DESC) ;
+ init("/Photo Albums") ;
+ }
+ public void init(path) {
+ //click on Seychelles1999
+ goToPage(path);
+ addWebUnit(
+ new ClickLinkWithText("ClickSeychelles1999", "Link to Seychelles1999'").
+ setTextLink("Seychelles1999")
+ );
+ //click on Vietnam 2001
+ goToPage(path);
+ addWebUnit(
+ new ClickLinkWithText("ClickVietnam2001", "Link to Vietnam 2001'").
+ setTextLink("Vietnam 2001")
+ );
+ //click on Cat Photo Album
+ goToPage(path);
+ addWebUnit(
+ new ClickLinkWithText("ClickCatPhotoAlbum", "Link to Cat Photo Album'").
+ setTextLink("Cat Photo Album")
+ );
+ goToPage(path);
+ COMMENT ="2 same form id, 2 same text field";
+ addWebUnit(
+ new TODO("SameFormIdNoEffectCreateAlbum!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //set name and create new album (2 same form id, 2 same text field, run but wrong result screen)
+
+ addWebUnit(
+ new SubmitFormUnit("TypeNameAndAddAlbum", "Add this album").
+ setFormId("newdoc").
+ setAction("../../Photos/").
+ setField("title","my test album")
+ //addValidator(new ExpectTextValidator("You are not allowed to view this document or perform this action."))
+ //addValidator(new ExpectFormIdValidator("edit"))
+ ) ;
+ */
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["user"] ;
+ return [new XwikiCreateAccountSuite(), new XwikiLoginSuite("#{client.name}", "#{client.name}", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkPresentationsPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkPresentationsPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkPresentationsPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,82 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.userLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkPresentationsPage extends WebUnitSuite {
+ static String DESC = "Go to Presentations page and click on links" ;
+ static String NAME = "XwikiCheckLinkPresentationsPage" ;
+ String COMMENT = null;
+
+ public XwikiCheckLinkPresentationsPage() {
+ super(NAME, DESC) ;
+ init("/Presentations") ;
+ }
+ public void init(path) {
+
+ //set name and create a presentation (2 same form id)
+ goToPage(path);
+ addWebUnit(
+ new SubmitFormUnit("TypeNameAndAddPresentation", "Add this presentation").
+ setFormId("newdoc").
+ setAction("../../inline/Demo/Name of your presentation").
+ setField("name","my test presentation").
+ addValidator(new ExpectTextValidator("You are not allowed to view this document or perform this action."))
+ ) ;
+ addWebUnit(
+ new ClickURLLinkUnit("BackToHome", "Back to home page").
+ setURL("/xwiki/bin/view/Main/")
+ ) ;
+ //click on preview to see existing presentation
+ goToPage(path);
+ addWebUnit(
+ new ClickLinkWithText("ClickPreview", "Click on preview").
+ setTextLink("Preview").
+ addValidator(new ExpectTextValidator("Presentation"))
+ );
+
+ //click on edit to modify existing presentation
+ goToPage(path);
+ addWebUnit(
+ new ClickLinkWithText("ClickEdit", "Click on edit").
+ setTextLink("Edit").
+ addValidator(new ExpectTextValidator("You are not allowed to view this document or perform this action."))
+ );
+ goToPage(path);
+ COMMENT ="WUT cannot click on launch";
+ addWebUnit(
+ new TODO("WUTCanNotClickLaunch!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //click on launch
+
+ addWebUnit(
+ new ClickURLLinkUnit("ClickLaunch", "Click on launch").
+ setURL("/xwiki/bin/view/Main/WhatIsAWiki?xpage=s5b")
+ ) ;
+ */
+ addWebUnit(
+ new ClickURLLinkUnit("BackToHome", "Back to home page").
+ setURL("/xwiki/bin/view/Main/")
+ ) ;
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["user"] ;
+ return [new XwikiCreateAccountSuite(), new XwikiLoginSuite("#{client.name}", "#{client.name}", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkWhatNewPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkWhatNewPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiCheckLinkWhatNewPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,58 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.userLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+public class XwikiCheckLinkWhatNewPage extends WebUnitSuite {
+ static String DESC = "Go to WhatNew page and click on links" ;
+ static String NAME = "XwikiCheckLinkWhatNewPage" ;
+ String COMMENT = null;
+
+ public XwikiCheckLinkWhatNewPage() {
+ super(NAME, DESC) ;
+ init("/What's New") ;
+ }
+ public void init(path) {
+ goToPage(path) ;
+ COMMENT ="Wrong function";
+ addWebUnit(
+ new TODO("ViewChangeIsWrong!!!",COMMENT).
+ setComment(COMMENT).
+ setStatus(WebUnit.STATUS_INCOMPLETE)
+ );
+ /*
+ //click to view change
+ addWebUnit(
+ new ClickURLLinkUnit("ClickViewChange", "Link to view change").
+ setURL("/xwiki/bin/view/Main/WhatsNew?diff=1")
+ ) ;
+ */
+ addWebSuite(new XwikiCreateAccountSuite()) ;
+ String[] roles = ["user"] ;
+ addWebSuite(new XwikiLoginSuite("#{client.name}", "#{client.name}", roles)) ;
+ //check exist of new user link
+ goToPage(path) ;
+ addWebUnit(
+ new ClickURLLinkUnit("ClickCurrentUser", "Click to see current user profile").
+ setURL("/xwiki/bin/view/XWiki/"+"#{client.name}").
+ addValidator(new ExpectTextValidator("User Profile"))
+ ) ;
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["user"] ;
+ return [new XwikiCreateAccountSuite(), new XwikiLoginSuite("#{client.name}", "#{client.name}", roles)] ;
+ }
+}
Added: xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiUserCheckLinkMainPage.groovy
===================================================================
--- xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiUserCheckLinkMainPage.groovy 2006-04-27 06:38:22 UTC (rev 1057)
+++ xwiki/trunk/src/test/webunit/suites/xwiki/userLink/XwikiUserCheckLinkMainPage.groovy 2006-04-28 09:27:29 UTC (rev 1058)
@@ -0,0 +1,150 @@
+/***************************************************************************
+ * Copyright 2001-2005 The eXo Platform SARL All rights reserved. *
+ * Please look at license.txt in info directory for more license detail. *
+ **************************************************************************/
+package suites.xwiki.userLink;
+
+import suites.xwiki.share.XwikiLoginSuite;
+import suites.xwiki.share.XwikiLogoutSuite;
+import suites.xwiki.share.XwikiCreateAccountSuite;
+import org.exoplatform.webunit.*;
+import org.exoplatform.webunit.unit.*;
+import org.exoplatform.webunit.validator.*;
+
+/**
+ * Nov 14, 2005
+ * @author: Dung Hoang
+ * @email: dunghoang at exoplatform.com
+ **/
+
+
+public class XwikiUserCheckLinkMainPage extends WebUnitSuite {
+ static String DESC = "Go to main page and click on links" ;
+ static String NAME = "XwikiUserCheckLinkMainPage" ;
+ String COMMENT = null;
+
+ public XwikiUserCheckLinkMainPage() {
+ super(NAME, DESC) ;
+ //click on Home tab
+ addWebUnit(
+ new ClickLinkWithText("GoToHome", "Link to Home page").
+ setTextLink("Home").
+ addValidator(new ExpectTextValidator("Welcome to your Wiki"))
+ ) ;
+ //click on Blog tab
+ addWebUnit(
+ new ClickLinkWithText("GoToBlog", "Link to Blog page").
+ setTextLink("Blog").
+ addValidator(new ExpectTextValidator("Latest Articles"))
+ ) ;
+ //click on Knowledge Base tab
+ addWebUnit(
+ new ClickLinkWithText("GoToKnowledgeBase", "Link to Knowledge Base page").
+ setTextLink("Knowledge Base").
+ addValidator(new ExpectTextValidator("Wiki Knowledge Base"))
+ ) ;
+ //click on What'sNew tab
+ addWebUnit(
+ new ClickLinkWithText("GoToWhat'sNew", "Link to What's New page").
+ setTextLink("What's New").
+ addValidator(new ExpectTextValidator("What's New"))
+ ) ;
+ //click on Search tab
+ addWebUnit(
+ new ClickLinkWithText("GoToSearch", "Link to Search page").
+ setTextLink("Search").
+ addValidator(new ExpectTextValidator("Search on this Wiki"))
+ ) ;
+ //click on Doc tab
+ addWebUnit(
+ new ClickLinkWithText("GoToDoc", "Link to Doc page").
+ setTextLink("Doc").
+ addValidator(new ExpectTextValidator("Documentation"))
+ ) ;
+ //click on Register tab
+ addWebUnit(
+ new ClickLinkWithText("GoToRegister", "Link to register page").
+ setTextLink("Register").
+ addValidator(new ExpectTextValidator("Information about you"))
+ ) ;
+ //click on Photo Albums link
+ addWebUnit(
+ new ClickLinkWithText("GoToPhotoAlbums", "Link to Photo Albums page").
+ setTextLink("Photo Albums").
+ addValidator(new ExpectTextValidator("Photo Albums"))
+ ) ;
+ //click on Event Calendar link
+ addWebUnit(
+ new ClickLinkWithText("GoToEventCalendar", "Link to Event Calendar page").
+ setTextLink("Event Calendar").
+ addValidator(new ExpectTextValidator("Event Calendar"))
+ ) ;
+ //click on Presentation link
+ addWebUnit(
+ new ClickLinkWithText("GoToPresentation", "Link to Presentation page").
+ setTextLink("Presentations").
+ addValidator(new ExpectTextValidator("Presentation"))
+ ) ;
+ //click on News link(note: if being in home page, there are more than one 'News' word on screen so cannot setTextLink)
+ addWebUnit(
+ new ClickURLLinkUnit("GoToNews", "Link to News page").
+ setURL("/xwiki/bin/view/Blog/Category?category=News").
+ addValidator(new ExpectTextValidator("Entries for category News"))
+ ) ;
+ //click on Personal link
+ addWebUnit(
+ new ClickLinkWithText("GoToPersonal", "Link to Personal page").
+ setTextLink("Personal").
+ addValidator(new ExpectTextValidator("Entries for category Personal"))
+ ) ;
+ //click on Other link
+ addWebUnit(
+ new ClickLinkWithText("GoToOther", "Link to Other page").
+ setTextLink("Other").
+ addValidator(new ExpectTextValidator("Entries for category Other"))
+ ) ;
+ //click on Add Comment link
+ addWebUnit(
+ new ClickLinkWithText("ClickAddComment", "Click on 'Add comment'").
+ setTextLink("Add comment").
+ addValidator(new ExpectTextValidator("New Comment"))
+ ) ;
+ //click on History link (it connect to another window that has no base link so make it the latest)
+ addWebUnit(
+ new ClickLinkWithText("ClickHistory", "Click on 'History'").
+ setTextLink("History").
+ addValidator(new ExpectTextValidator("Document History"))
+ ) ;
+ //PDF link is not supported to test by WebUnit
+ //click on 'more actions' then on 'Code'
+ addWebUnit(
+ new ClickLinkWithText("ClickMoreActions", "Click on 'More Actions'").
+ setTextLink("More Actions")
+ ) ; //if run this unit after all, the expected text is not right but it is also runnable
+ addWebUnit(
+ new ClickLinkWithText("ClickCode", "Click on 'Code'").
+ setTextLink("Code")
+ );
+ //click on 'more actions' then on 'Xwiki syntax'
+ addWebUnit(
+ new ClickLinkWithText("ClickMoreActions", "Click on 'More Actions'").
+ setTextLink("More Actions")
+ ) ;
+ addWebUnit(
+ new ClickLinkWithText("ClickXwikiSyntax", "Click on 'Xwiki Syntax'").
+ setTextLink("Xwiki Syntax").
+ addValidator(new ExpectTextValidator("XWiki Syntax"))
+ );
+ //view user profile
+ addWebUnit(
+ new ClickLinkWithText("ViewUSerProfile", "View an user profile").
+ setTextLink("Xwiki Admin").
+ addValidator(new ExpectTextValidator("User Profile"))
+ );
+ addWebSuite(new XwikiLogoutSuite());
+ }
+ public java.util.List getRequiredSuites() {
+ String[] roles = ["user"] ;
+ return [new XwikiCreateAccountSuite(), new XwikiLoginSuite("#{client.name}", "#{client.name}", roles)] ;
+ }
+}
More information about the Xwiki-notifications
mailing list