Advertisement
VDzhevalov

DZ2 attempt1

Jul 23rd, 2016
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.57 KB | None | 0 0
  1. package lessons.tests.vladimir.todomvc.smoke.v2;
  2.  
  3. import com.codeborne.selenide.Condition;
  4. import com.codeborne.selenide.ElementsCollection;
  5. import org.junit.Before;
  6. import org.junit.Test;
  7.  
  8. import static com.codeborne.selenide.CollectionCondition.empty;
  9. import static com.codeborne.selenide.CollectionCondition.exactTexts;
  10. import static com.codeborne.selenide.Condition.cssClass;
  11. import static com.codeborne.selenide.Condition.exactText;
  12. import static com.codeborne.selenide.Selenide.*;
  13.  
  14. /**
  15. * Created by Vladimir on 20.07.2016.
  16. */
  17. public class TodoMVCTest {
  18.  
  19. @Before
  20. public void testSetup() {
  21. open("https://todomvc4tasj.herokuapp.com/");
  22. }
  23.  
  24. @Test
  25. public void testBasicUserActivity() {
  26.  
  27. add("1", "2", "3");
  28. toggleAll();
  29.  
  30. showCompleted();
  31. editTask("1", "1e");
  32. toggleTask("1e");
  33. delete("2");
  34. clearComplited();
  35. tasks.filterBy(cssClass("completed")).shouldBe(empty);
  36.  
  37. showActive();
  38. editTask("1e", "1");
  39. delete("1");
  40. add("2", "3", "4");
  41. toggleTask("2");
  42. toggleAll();
  43. tasks.filterBy(cssClass("active")).shouldBe(empty);
  44.  
  45. showAll();
  46. assertTasksAre("2", "3", "4");
  47. clearComplited();
  48. tasks.shouldBe(empty);
  49. }
  50.  
  51. ElementsCollection tasks = $$("#todo-list li");
  52. ElementsCollection filters = $$("#filters a");
  53.  
  54. private void add(String... taskTexts) {
  55. for (String text : taskTexts) {
  56. $("#new-todo").setValue(text).pressEnter();
  57. }
  58. }
  59.  
  60. private void assertTasksAre(String... taskTexts) {
  61. tasks.shouldHave(exactTexts(taskTexts));
  62. }
  63.  
  64. private void clearComplited() {
  65. $("#clear-completed").click();
  66. }
  67.  
  68. private void delete(String taskText) {
  69. tasks.find(exactText(taskText)).hover().$(".destroy").click();
  70. }
  71.  
  72. private void toggleTask(String taskText) {
  73. tasks.find(exactText(taskText)).$(".toggle").click();
  74. }
  75.  
  76. private void toggleAll() {
  77. $("#toggle-all").click();
  78. }
  79.  
  80. private void showAll() {
  81. filters.find(exactText("All")).click();
  82. }
  83.  
  84. private void showActive() {
  85. filters.find(exactText("Active")).click();
  86. }
  87.  
  88. private void showCompleted() {
  89. filters.find(exactText("Completed")).click();
  90. }
  91.  
  92. private void editTask(String taskText, String newText) {
  93. tasks.find(exactText(taskText)).doubleClick();
  94. $("input.edit").clear();
  95. $("input.edit").setValue(newText).pressEnter();
  96. }
  97. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement