Advertisement
zhytnytskyi

TodoMvcTest - hide baseUrl

Jul 22nd, 2017
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.37 KB | None | 0 0
  1. package ua.net.azhytnytskyi.housework;
  2.  
  3. import com.codeborne.selenide.ElementsCollection;
  4. import com.codeborne.selenide.Selenide;
  5. import com.codeborne.selenide.SelenideElement;
  6. import org.junit.Test;
  7.  
  8. import static com.codeborne.selenide.CollectionCondition.exactTexts;
  9. import static com.codeborne.selenide.Condition.cssClass;
  10. import static com.codeborne.selenide.Condition.exactText;
  11. import static com.codeborne.selenide.Selenide.$;
  12. import static com.codeborne.selenide.Selenide.$$;
  13.  
  14.  
  15. public class TodoMvcTest extends BasicTest{
  16.  
  17.         @Test
  18.         public void basicTaskManagementFlow(){
  19.  
  20.             Selenide.open("/");
  21.             Selenide.sleep(1000);
  22.  
  23.             add("a", "b", "c", "d");
  24.             assertTasks("a", "b", "c", "d");
  25.  
  26.             edit("a","a edited");
  27.  
  28.             complete("a edited","b");
  29.             clearCompleted();
  30.             assertTasks("c", "d");
  31.  
  32.             discardEdit("c", "to be discarded");
  33.  
  34.             delete("c");
  35.             assertTasks("d");
  36.         }
  37.  
  38.         private static final ElementsCollection tasks = $$("#todo-list>li");
  39.  
  40.         private void add(String... taskName) {
  41.             for (String task : taskName) {
  42.                 $("#new-todo").setValue(task).pressEnter();
  43.             }
  44.         }
  45.  
  46.         private void edit(String oldTasName, String newTaskName){
  47.             startEdit(oldTasName,newTaskName).pressEnter();
  48.         }
  49.  
  50.         private void discardEdit(String oldTasName, String newTaskName){
  51.             startEdit(oldTasName,newTaskName).pressEscape();
  52.         }
  53.  
  54.         private void complete(String... tasksToComplete){
  55.             for (String task: tasksToComplete){
  56.                 tasks.findBy(exactText(task)).find(".toggle").click();
  57.             }
  58.         }
  59.  
  60.         private void clearCompleted(){
  61.             $("#clear-completed").click();
  62.         }
  63.  
  64.         private void delete(String taskToDelete){
  65.             tasks.findBy(exactText(taskToDelete)).hover().find(".destroy").click();
  66.         }
  67.  
  68.         private static void assertTasks(String... taskName) {
  69.             tasks.shouldHave(exactTexts(taskName));
  70.         }
  71.  
  72.         private SelenideElement startEdit(String oldTaskName, String newTaskName) {
  73.             tasks.findBy(exactText(oldTaskName)).doubleClick();
  74.             return tasks.findBy(cssClass("editing")).find(".edit").setValue(newTaskName);
  75.         }
  76.  
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement