Author: konstantin.mishin
Date: 2009-04-30 15:19:45 -0400 (Thu, 30 Apr 2009)
New Revision: 13981
Added:
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/testng/AddUseCasesTest.java
Modified:
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/RealWorldHelper.java
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/testng/LoginTest.java
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/testng/OpenAreasUseCasesTest.java
Log:
RF-6909
Modified:
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/RealWorldHelper.java
===================================================================
---
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/RealWorldHelper.java 2009-04-30
18:50:12 UTC (rev 13980)
+++
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/RealWorldHelper.java 2009-04-30
19:19:45 UTC (rev 13981)
@@ -45,12 +45,24 @@
String CANCEL_PATH = "//*[@id='" + FORM_ID +
":secondButton']//input";
}
+ public static interface AddShelfPanel {
+ String FORM_ID = "form5";
+ String NAME_ID = FORM_ID + ":name";
+ String SAVE_PATH = "//*[@id='" + FORM_ID +
":firstButton']//input";
+ }
+
+ public static interface AddAlbumPanel {
+ String FORM_ID = "form2";
+ String NAME_ID = FORM_ID + ":name";
+ String SAVE_PATH = "//*[@id='" + FORM_ID +
":firstButton']//input";
+ }
+
public static interface LogInOutArea {
String PATH = "xpath=id('logInOutMenu')";
- String LOGIN_LINK_ID = "loginPanelShowlink";
- String REGISTER_LINK_PATH = PATH + "/descendant::a[2]";
- String LOGOUT_LINK_PATH = REGISTER_LINK_PATH;
- String USER_INFO_LINK_PATH = "//a[@class='logged-user']";
+ String LOGIN_ID = "loginPanelShowlink";
+ String REGISTER_PATH = PATH + "/descendant::a[2]";
+ String LOGOUT_PATH = REGISTER_PATH;
+ String USER_INFO_PATH = "//a[@class='logged-user']";
}
public static interface ToolBarArea {
@@ -59,16 +71,16 @@
String VIEW_ALBUMS_PATH = PATH + "/div[3]";
String VIEW_IMAGES_PATH = PATH + "/div[4]";
String ADD_GROUP_PATH = PATH +
"/*[@id='menuform:add_icons_div_id']";
- String ADD_SHELF_LINK_PATH = ADD_GROUP_PATH + "/a[1]";
- String ADD_ALBUM_LINK_PATH = ADD_GROUP_PATH + "/a[2]";
- String ADD_IMAGE_LINK_PATH = ADD_GROUP_PATH + "/a[3]";
+ String ADD_SHELF_PATH = ADD_GROUP_PATH + "/a[1]";
+ String ADD_ALBUM_PATH = ADD_GROUP_PATH + "/a[2]";
+ String ADD_IMAGE_PATH = ADD_GROUP_PATH + "/a[3]";
}
public static interface ShelfArea {
- String HEADER_PATH =
"xpath=/descendant::*[@class='shelf-header-table']";
+ String HEADER_PATH =
"//*[@class='content_box']/descendant::*[@class='shelf-header-table']";
String HEADER_NAME_PATH_SUFFIX = "//h1//text()";
String HEADER_NAME_PATH = HEADER_PATH + HEADER_NAME_PATH_SUFFIX;
- String DELETE_BUTTON_PATH =
"//*[@class='shelf-header-table-col2']/a[2]";
+ String DELETE_PATH = "//*[@class='shelf-header-table-col2']/a[2]";
}
public static interface AlbumArea {
@@ -78,7 +90,7 @@
String PREVIEW_PATH = "//*[@class='preview_box_album_120']";
String PREVIEW_LINK_PATH_SUFFIX = "//a";
String PREVIEW_NAME_PATH_SUFFIX = "/*[@class='album_name']";
- String DELETE_BUTTON_PATH =
"//*[@class='album-header-table-col2']/a[2]";
+ String DELETE_PATH = "//*[@class='album-header-table-col2']/a[2]";
//String IMAGES_CONTAINER =
"//span[@id='mainform:userAlbumImages']";
}
@@ -89,18 +101,18 @@
String PREVIEW_PATH = "//*[@class='preview_box_photo_120']";
String PREVIEW_LINK_PATH_SUFFIX = "//a";
String PREVIEW_NAME_PATH_SUFFIX = "/*[@class='photo_name']";
- String DELETE_BUTTON_PATH =
"//*[@class='mainImage-table-col3']/div[2]/input";
+ String DELETE_PATH =
"//*[@class='mainImage-table-col3']/div[2]/input";
}
public static interface UserProfileArea {
- String NAME_INPUT_ID = IndexPage.MAIN_FORM_ID + ":loginName";
- String PASSWORD_INPUT_ID = IndexPage.MAIN_FORM_ID + ":password";
- String CONFIRM_PASSWORD_INPUT_ID = IndexPage.MAIN_FORM_ID +
":confirmPassword";
- String FIRST_NAME_INPUT_ID = IndexPage.MAIN_FORM_ID + ":firstname";
- String SECOND_NAME_INPUT_ID = IndexPage.MAIN_FORM_ID + ":secondname";
- String BIRTH_DATE_INPUT_ID = IndexPage.MAIN_FORM_ID +
":birthDateInputDate";
- String EMAIL_INPUT_ID = IndexPage.MAIN_FORM_ID + ":email";
- String REGISTER_BUTTON_PATH =
"//*[@class='content_box']/descendant::*[@class='photoalbumButton'][1]//input";
+ String NAME_ID = IndexPage.MAIN_FORM_ID + ":loginName";
+ String PASSWORD_ID = IndexPage.MAIN_FORM_ID + ":password";
+ String CONFIRM_PASSWORD_ID = IndexPage.MAIN_FORM_ID + ":confirmPassword";
+ String FIRST_NAME_ID = IndexPage.MAIN_FORM_ID + ":firstname";
+ String SECOND_NAME_ID = IndexPage.MAIN_FORM_ID + ":secondname";
+ String BIRTH_DATE_ID = IndexPage.MAIN_FORM_ID + ":birthDateInputDate";
+ String EMAIL_ID = IndexPage.MAIN_FORM_ID + ":email";
+ String REGISTER_PATH =
"//*[@class='content_box']/descendant::*[@class='photoalbumButton'][1]//input";
}
public static interface FilesUploadArea {
@@ -117,7 +129,7 @@
}
public static void login(Selenium selenium, String name, String password) {
- selenium.click(HtmlConstants.LogInOutArea.LOGIN_LINK_ID);
+ selenium.click(HtmlConstants.LogInOutArea.LOGIN_ID);
try {
Thread.sleep(5000);
}catch (Exception e) {
@@ -145,7 +157,7 @@
}
public static void logout(Selenium selenium) {
- selenium.click(HtmlConstants.LogInOutArea.LOGOUT_LINK_PATH);
+ selenium.click(HtmlConstants.LogInOutArea.LOGOUT_PATH);
selenium.waitForPageToLoad(String.valueOf(TIMEOUT));
Assert.assertFalse(isLogined(selenium), "Logout was not succesfull.");
}
@@ -155,9 +167,9 @@
}
public static void testUserProfile(Selenium selenium, String name) {
- Assert.assertTrue(selenium.isVisible(HtmlConstants.UserProfileArea.NAME_INPUT_ID));
+ Assert.assertTrue(selenium.isVisible(HtmlConstants.UserProfileArea.NAME_ID));
if (name != null) {
- Assert.assertEquals(selenium.getValue(HtmlConstants.UserProfileArea.NAME_INPUT_ID),
name);
+ Assert.assertEquals(selenium.getValue(HtmlConstants.UserProfileArea.NAME_ID), name);
}
}
@@ -183,8 +195,8 @@
if (shelfName != null) {
int xpathCount =
selenium.getXpathCount(HtmlConstants.ShelfArea.HEADER_PATH).intValue();
for (int i = 2; i <= xpathCount && !presented; i++) {
- presented = selenium.getText("(" + HtmlConstants.ShelfArea.HEADER_PATH
- + ")[" + i + "]" +
HtmlConstants.ShelfArea.HEADER_NAME_PATH_SUFFIX)
+ presented = selenium.getText("" + HtmlConstants.ShelfArea.HEADER_PATH
+ + "[" + i + "]" +
HtmlConstants.ShelfArea.HEADER_NAME_PATH_SUFFIX)
.equals(shelfName);
}
@@ -195,12 +207,21 @@
}
public static void deleteCurrentShelf(Selenium selenium) {
- selenium.click(HtmlConstants.ShelfArea.DELETE_BUTTON_PATH);
+ selenium.click(HtmlConstants.ShelfArea.DELETE_PATH);
waitForAjaxCompletion(selenium);
confirm(selenium);
testShelfArea(selenium);
}
+ public static void addShelf(Selenium selenium, String shelfName) {
+ selenium.click(HtmlConstants.ToolBarArea.ADD_SHELF_PATH);
+ waitForAjaxCompletion(selenium);
+ selenium.type(HtmlConstants.AddShelfPanel.NAME_ID, shelfName);
+ selenium.click(HtmlConstants.AddShelfPanel.SAVE_PATH);
+ waitForAjaxCompletion(selenium);
+ testShelfArea(selenium, shelfName);
+ }
+
public static void openAlbumFromPreview(Selenium selenium) {
openAlbumFromPreview(selenium, selenium.getText(HtmlConstants.AlbumArea.PREVIEW_PATH +
HtmlConstants.AlbumArea.PREVIEW_NAME_PATH_SUFFIX));
}
@@ -255,12 +276,21 @@
}
public static void deleteCurrentAlbum(Selenium selenium) {
- selenium.click(HtmlConstants.AlbumArea.DELETE_BUTTON_PATH);
+ selenium.click(HtmlConstants.AlbumArea.DELETE_PATH);
waitForAjaxCompletion(selenium);
confirm(selenium);
testAlbumArea(selenium);
}
+ public static void addAlbum(Selenium selenium, String albumName) {
+ selenium.click(HtmlConstants.ToolBarArea.ADD_ALBUM_PATH);
+ waitForAjaxCompletion(selenium);
+ selenium.type(HtmlConstants.AddAlbumPanel.NAME_ID, albumName);
+ selenium.click(HtmlConstants.AddAlbumPanel.SAVE_PATH);
+ waitForAjaxCompletion(selenium);
+ testAlbumArea(selenium, albumName);
+ }
+
public static void openImageFromPreview(Selenium selenium) {
openImageFromPreview(selenium, selenium.getText(HtmlConstants.ImageArea.PREVIEW_PATH +
HtmlConstants.ImageArea.PREVIEW_NAME_PATH_SUFFIX));
}
@@ -314,7 +344,7 @@
}
public static void deleteCurrentImage(Selenium selenium) {
- selenium.click(HtmlConstants.ImageArea.DELETE_BUTTON_PATH);
+ selenium.click(HtmlConstants.ImageArea.DELETE_PATH);
waitForAjaxCompletion(selenium);
confirm(selenium);
testAlbumArea(selenium);
@@ -337,9 +367,9 @@
}
public static boolean isLogined(Selenium selenium, String name) {
- boolean logined =
!selenium.getXpathCount(HtmlConstants.LogInOutArea.USER_INFO_LINK_PATH).equals(0);
+ boolean logined =
!selenium.getXpathCount(HtmlConstants.LogInOutArea.USER_INFO_PATH).equals(0);
if (logined && name != null) {
- logined =
selenium.getText(HtmlConstants.LogInOutArea.USER_INFO_LINK_PATH).equals(name);
+ logined =
selenium.getText(HtmlConstants.LogInOutArea.USER_INFO_PATH).equals(name);
}
return logined;
}
Added:
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/testng/AddUseCasesTest.java
===================================================================
---
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/testng/AddUseCasesTest.java
(rev 0)
+++
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/testng/AddUseCasesTest.java 2009-04-30
19:19:45 UTC (rev 13981)
@@ -0,0 +1,46 @@
+/**
+ *
+ */
+package org.richfaces.photoalbum.testng;
+
+import junit.framework.Assert;
+
+import org.richfaces.photoalbum.RealWorldHelper;
+import org.richfaces.photoalbum.SeleniumTestBase;
+import org.richfaces.photoalbum.RealWorldHelper.HtmlConstants;
+import org.testng.annotations.Test;
+
+/**
+ * @author Konstantin Mishin
+ *
+ */
+public class AddUseCasesTest extends SeleniumTestBase {
+
+ @Test
+ public void testAddAlbum() {
+ String albumName = "_album album";
+ renderPage();
+ RealWorldHelper.login(selenium);
+ selenium.click(HtmlConstants.ToolBarArea.VIEW_ALBUMS_PATH);
+ waitForAjaxCompletion();
+ Assert.assertFalse(RealWorldHelper.isAlbumPresentOnPage(selenium, albumName));
+ RealWorldHelper.addAlbum(selenium, albumName);
+ selenium.click(HtmlConstants.ToolBarArea.VIEW_ALBUMS_PATH);
+ waitForAjaxCompletion();
+ Assert.assertTrue(RealWorldHelper.isAlbumPresentOnPage(selenium, albumName));
+ }
+
+ @Test
+ public void testAddShelf() {
+ String shelfName = "_shelf";
+ renderPage();
+ RealWorldHelper.login(selenium);
+ selenium.click(HtmlConstants.ToolBarArea.VIEW_SHELFS_PATH);
+ waitForAjaxCompletion();
+ Assert.assertFalse(RealWorldHelper.isShelfPresentOnPage(selenium, shelfName));
+ RealWorldHelper.addShelf(selenium, shelfName);
+ selenium.click(HtmlConstants.ToolBarArea.VIEW_SHELFS_PATH);
+ waitForAjaxCompletion();
+ Assert.assertTrue(RealWorldHelper.isShelfPresentOnPage(selenium, shelfName));
+ }
+}
Modified:
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/testng/LoginTest.java
===================================================================
---
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/testng/LoginTest.java 2009-04-30
18:50:12 UTC (rev 13980)
+++
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/testng/LoginTest.java 2009-04-30
19:19:45 UTC (rev 13981)
@@ -30,17 +30,17 @@
renderPage();
String name = "New user";
String password = "pass";
- selenium.click(HtmlConstants.LogInOutArea.REGISTER_LINK_PATH);
+ selenium.click(HtmlConstants.LogInOutArea.REGISTER_PATH);
waitForAjaxCompletion();
RealWorldHelper.testUserProfile(selenium);
- selenium.type(HtmlConstants.UserProfileArea.NAME_INPUT_ID, name);
- selenium.type(HtmlConstants.UserProfileArea.PASSWORD_INPUT_ID, password);
- selenium.type(HtmlConstants.UserProfileArea.CONFIRM_PASSWORD_INPUT_ID, password);
- selenium.type(HtmlConstants.UserProfileArea.FIRST_NAME_INPUT_ID, "first");
- selenium.type(HtmlConstants.UserProfileArea.SECOND_NAME_INPUT_ID, "second");
- selenium.type(HtmlConstants.UserProfileArea.BIRTH_DATE_INPUT_ID, "Jan 1,
1");
- selenium.type(HtmlConstants.UserProfileArea.EMAIL_INPUT_ID,
"user(a)exadel.com");
- selenium.click(HtmlConstants.UserProfileArea.REGISTER_BUTTON_PATH);
+ selenium.type(HtmlConstants.UserProfileArea.NAME_ID, name);
+ selenium.type(HtmlConstants.UserProfileArea.PASSWORD_ID, password);
+ selenium.type(HtmlConstants.UserProfileArea.CONFIRM_PASSWORD_ID, password);
+ selenium.type(HtmlConstants.UserProfileArea.FIRST_NAME_ID, "first");
+ selenium.type(HtmlConstants.UserProfileArea.SECOND_NAME_ID, "second");
+ selenium.type(HtmlConstants.UserProfileArea.BIRTH_DATE_ID, "Jan 1, 1");
+ selenium.type(HtmlConstants.UserProfileArea.EMAIL_ID, "user(a)exadel.com");
+ selenium.click(HtmlConstants.UserProfileArea.REGISTER_PATH);
waitForAjaxCompletion();
Assert.assertTrue(RealWorldHelper.isLogined(selenium, name));
}
Modified:
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/testng/OpenAreasUseCasesTest.java
===================================================================
---
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/testng/OpenAreasUseCasesTest.java 2009-04-30
18:50:12 UTC (rev 13980)
+++
trunk/examples/photoalbum/tests/src/test/java/org/richfaces/photoalbum/testng/OpenAreasUseCasesTest.java 2009-04-30
19:19:45 UTC (rev 13981)
@@ -34,7 +34,7 @@
public void testOpenUserProfile() {
renderPage();
RealWorldHelper.login(selenium);
- selenium.click(HtmlConstants.LogInOutArea.USER_INFO_LINK_PATH);
+ selenium.click(HtmlConstants.LogInOutArea.USER_INFO_PATH);
waitForAjaxCompletion();
RealWorldHelper.testUserProfile(selenium, UserInfoConstants.LOGIN_NAME);
}
@@ -43,7 +43,7 @@
public void testOpenFilesUpload() {
renderPage();
RealWorldHelper.login(selenium);
- selenium.click(HtmlConstants.ToolBarArea.ADD_IMAGE_LINK_PATH);
+ selenium.click(HtmlConstants.ToolBarArea.ADD_IMAGE_PATH);
waitForAjaxCompletion();
RealWorldHelper.testFilesUpload(selenium);
}