julia_v_iluhina

Untitled

Oct 20th, 2016
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.62 KB | None | 0 0
  1. private void givenWithSmartCondition(String conditionStatus, String... taskTexts) {
  2.         for (String text : taskTexts) {
  3.             $("#new-todo").shouldBe(enabled);
  4.             if (conditionStatus == "toggle") {
  5.                 conditionStatus = "true";
  6.             } else {
  7.                 conditionStatus = "false";
  8.             }
  9.             executeJavaScript(storage + status + conditionStatus + title + text + endOfScript);
  10.             refresh();
  11.         }
  12. }
  13.  
  14. /*
  15.     оттолкнемся от этого метода, как лучшего на текущий момент
  16.     (по твоему мнению)
  17.  
  18.     давай работать с ним в тест-методах, которые требуют нескольких тасок в списке
  19.  
  20.     для начала - создай тест-метод, который состоит из 2-х строк кода
  21.  
  22.     givenWithSmartCondition("toggle", "a", "b", "c");
  23.     assertTasksAre("a", "b", "c");
  24.  
  25.     пока не будем рассуждать о реализации первого параметра String conditionStatus
  26.     просто - получим нужный нам результат - 3 таски в списке
  27.  
  28.     сразу скажу, что при таком коде givenWithSmartCondition - такой тест будет падать
  29.     он и должен падать
  30.  
  31.     посмотри вручную
  32.         добавь несколько тасок в список
  33.         и проверь - что содержит элемент локалсториджа todos-troopjs
  34.  
  35.     ты увидишь что-то такое http://joxi.ru/MAj1YoWsv0BLn2
  36.     т е - в []
  37.     идут блоки о каждой таске списка {}
  38.     через запятую
  39.  
  40.     а что делаем мы
  41.     на каждой итерации в цикле -
  42.     заново заполняем (не добавляем, а именно заново заполняем)
  43.     локалсторидж информацией об одной таске
  44.  
  45.     и вот результат - на каждой итерации - у тебя в локалсторидже 1 таска
  46.     и после последней итерации - не 3 таски, а одна, последняя
  47.  
  48.  
  49.     писала тебе в слеке иносказательный пример)
  50.         например, нам нужно написать метод, возвращающий строку - фразу  - <Животное> ест <еду>
  51.         мы пишем метод String tellAbout(String animal, String food)
  52.         который вернет animal+" eats "+food
  53.         и когда ты вызовешь - tellAbout("Cat", "fish") - ты получишь одну фразу
  54.         а когда этот же метод - с другими параметрами - другую
  55.         вот и тебе передадут - тексты тасок
  56.         а тебе нужно изнескольких строк - собрать нужную тебе строку
  57.  
  58.         у тебя задача - написать чуть сложнее метод)
  59.         String tellAbout(String animal, String... foods)
  60.         чтобы получить - animal eats ... , .... , ...
  61.         и так через запятую - все переданные виды еды
  62.  
  63.         а теперь вспоминаем про нашу задачу
  64.         раз мы уже научились собирать строку  animal eats ... , .... , ...
  65.         то мы точно также можем
  66.          в цикле - собрать текст javascript команды
  67.          и уже после цикла - ее выполнить
  68.          ну и потом можно и рефреш )
  69.  
  70.         что до $("#new-todo").shouldBe(enabled);
  71.         этого точно не нужно делать в цикле
  72.         и вообще - еще вопрос - нужно ли)
  73.         такую проверку Яков предлагал использовать
  74.         как индикатор - что страница загрузилась
  75.         посмотри - нужен ли тебе такой индикатор
  76.         ну и если нужен - подумай - когда он нужен
  77.        
  78.     надеюсь, в faq ты уже видел линки
  79.         А вообще на эту тему что можно почитать?
  80.         http://htmlbook.ru/html5/storage
  81.         http://diveintohtml5.info/storage.html
  82.     советую почитать)
  83. */
Advertisement
Add Comment
Please, Sign In to add comment