julia_v_iluhina

Untitled

Oct 6th, 2016
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.36 KB | None | 0 0
  1. public interface DescribesEntity<T> {
  2.     String identity();
  3. }
  4. /*
  5.     лучше бы это разместить  в пекедже wrappers - т к это ведь относится к нашим лейзи-сущностям
  6. */
  7. *************************
  8. /*
  9.     в конце работы - не забудь пройтись по коду
  10.     реформатировать
  11.     пропуски строк подправить
  12.     рабочие комменты убрать
  13.  
  14.     ну и проверить - что по-прежнему все ок работает
  15. */
  16. ***************************
  17. CollectionCondition и ElementCondition перемести на уровень вверх
  18. в пекедж conditions
  19.  
  20. цель - то, что нужно для внешней стороны дела - выносим на уровень повыше
  21.  
  22. мы же в итоге - именно этими типами оперируем
  23. ****************************************
  24. WithWaitFor и Command - перенеси в core
  25. к wrappers это не имеет отношения
  26. а городить им отдельные пекеджи - тоже смысла нет
  27. ***********************************
  28. public <X> X getScreenshotAs(OutputType<X> outputType)
  29. /*
  30.     это тоже можно переписать с использованием withWaitFor
  31.  
  32.     оперируй командой типа Command<X> тебе же нужен результат типа X
  33. */
  34. ***************************************
  35. public class LazyCollectionNthElement extends AbstractLazyElement {
  36.    ....
  37.  
  38.     @Override
  39.     public String toString() {
  40.         return "parentCollection[" + index + "] = " + getWrappedEntity();
  41.     }
  42. /*
  43.     ненене
  44.     в toString() - уже никаких getWrappedEntity()
  45.  
  46.     тут  - описываем - как искали
  47.     и все
  48.     parentCollection.toString() + "[" + index + "]"
  49.  
  50.     что нашли, а тем более заново искать это - не описываем)
  51.     только - как искали
  52. */
  53. **********************************
  54.     public void delete(String taskText) {
  55.         tasks.find(exactText(taskText)).hover();
  56.         tasks.find(exactText(taskText)).find(".destroy").click();
  57.     }
  58. /*
  59.     снова сможешь написать это в одну строчку - как в селениде
  60. */
  61. **********************************
  62. public static List<String> getTexts(List<WebElement> elements)
  63. /*
  64.     этот метод из Helpers
  65.     можно применить внутри AbstractLazyCollection#getTexts()
  66. */
  67. ****************************
  68. public abstract class AbstractCondition<T> implements Condition<T>, DescribesResult {
  69.  
  70.     public LazyEntity<T> entity;
  71.  
  72.     public T apply(LazyEntity<T> entity) {
  73.         /*
  74.             вот тут нужно
  75.             this.entity = entity;
  76.             т к ниже - в toString - мы работаем с полем этого объекта
  77.             entity - а его не заполнили
  78.  
  79.             и у нас null pointer exception
  80.         */
  81. /*
  82.     ты писала про - но есть проблема с тестом testSearchAndFollowLink.
  83.  
  84.     у меня больше тестов падало, и все  - с NPE )
  85.     вот этот момент поправила - и стало ок
  86. */
Advertisement
Add Comment
Please, Sign In to add comment