/tests/src/test/java/org/sigmah/endtoend/CreateDatabaseTest.java

http://sigma-h.googlecode.com/ · Java · 61 lines · 42 code · 14 blank · 5 comment · 0 complexity · 74296c5ab3ae0d360fcb36a7c8c7850a MD5 · raw file

  1. /*
  2. * All Sigmah code is released under the GNU General Public License v3
  3. * See COPYRIGHT.txt and LICENSE.txt.
  4. */
  5. package org.sigmah.endtoend;
  6. import org.junit.Test;
  7. import org.openqa.selenium.Cookie;
  8. import org.sigmah.endtoend.page.GxtApplication;
  9. import org.sigmah.endtoend.page.GxtComponent;
  10. import static org.sigmah.endtoend.xpath.XPath.*;
  11. import static org.sigmah.endtoend.xpath.ext.GxtXPath.isComboBox;
  12. import static org.sigmah.endtoend.xpath.ext.GxtXPath.isToolbar;
  13. public class CreateDatabaseTest extends EndToEndTestCase {
  14. @Test
  15. public void canCreateDatabase() {
  16. dataLoader.load("/dbunit/createdatabase.db.xml");
  17. navigateToAppWithAuthorization();
  18. GxtApplication app = getApp();
  19. app.clickOn("Setup");
  20. app.find(
  21. descendant(isToolbar()),
  22. descendant(havingTextEqualTo("New Database"))
  23. ).click();
  24. GxtComponent window = app.activeWindow();
  25. window.find(
  26. descendant(havingTextEqualTo("Name:")),
  27. following(element("input"))
  28. ).sendKeys("My New Database");
  29. window.find(
  30. descendant(havingTextEqualTo("Description:")),
  31. following(element("input"))
  32. ).sendKeys("A full description of my new database");
  33. window.find(
  34. descendant(havingTextEqualTo("Country:")),
  35. following(isComboBox())
  36. ).asComboBox().trigger("Haiti");
  37. window.clickOn("Save");
  38. // should now appear in grid
  39. app.find(
  40. descendant(havingTextEqualTo("A full description of my new database"))
  41. );
  42. }
  43. private void addAuthCookie() {
  44. removeAuthCookie();
  45. driver.manage().addCookie(new Cookie.Builder("authToken", "XYZ123").domain("localhost").build());
  46. }
  47. }