
Sergey
29.10.2016
16:27:19
у страны есть еще параметры
вроде пользователь который в этой стране является топовым
его тоже надо обязательно указывать (есть юзеры по умолчанию)
ну как-то так

Google

Sergey
29.10.2016
16:28:08
и что бы создать инстанс одного юзера для конкретного сценария надо написать многова-то кода
я повыносил все в отдельные трейты с методами аля "сделай мне заблокированного юзера"
но чето как-то всеравно говно
в целом у меня есть мысли как это упростить
например избавиться у штуки которая стартует чатики от юзеров)
а точнее что бы штука эта ничего у юзеров не спрашивала и ей все готовое приходило
но тогда другие проблемы
p.s. раньше делал сущности руками - сейчас стало сложно

Aleh
29.10.2016
16:57:58
короче, мы с Юрой тож спорили, то ли мокать, то ли не мокать
причем вполне реален кейс, когда создать и замокать одинаково тяжко

Sergey
29.10.2016
17:15:34
мокать сущности = мокать данные
мокать данные = знать как ими пользуются
знать как ими пользуется = боль при поддержке тестов

Google

Aleh
29.10.2016
17:16:00
прям вот данные?

Sergey
29.10.2016
17:16:07
ну прям вот данные)
ну утрированно
окей

Aleh
29.10.2016
17:16:29
)

Sergey
29.10.2016
17:16:40
мокать сущности = знать как сущностью будут пользоваться = боль при поддержке тестов
любое изменение в логике, любой рефакторинг меняющий флоу - придется переписывать тесты

Aleh
29.10.2016
17:17:01
это да

Sergey
29.10.2016
17:17:14
потому я категорически не хочу мокать тесты
у меня проблема еще в том что я... фикстуры делаю)
у меня сейчас каша с этим
1. есть фикстуры которые используются для QA и для дэмо клиенту
2. есть фикстуры которые используются в API тестах
3. нужны фикстуры для юнит и интеграционных тестов (без записи в базу по сути)

Fayozjon [CybernatiC]
29.10.2016
17:52:48
Ребят всем добрый вечер. Хочу научится тестированию. Поделитесь пожалуйста своим опытом как вы научились тестам

Aleh
29.10.2016
18:20:52
ну тут вроде просто
начать, а понять тяжело)

Fayozjon [CybernatiC]
29.10.2016
18:23:15
Спасибо большое за то что делитесь знаниями
Для самоучки это важно

Aleh
29.10.2016
18:23:39
так это ж смысл чатика с большего)
потом Кент Бека читать и вообще про tdd, потом про bdd

Google

Aleh
29.10.2016
18:24:01
ну и главное пробовать че
^ это про юниты с большего(unittests)

Sergey
30.10.2016
15:50:56
да, главное - пробовать
без этого смысла нет

Sergey
30.10.2016
16:08:43
я не знаю мне просто "везет" так или все же есть проблема что на всяких конфах и вообще в основном люди рассказывают о тестах как о функциональных и тому подобных, а юнит тесты ограничиваются примерами тестирования калькулятора? хотя если следовать пирамиде, то их должно быть больше в разы чем других
мне даже пытались доказывать что юнит тесты бесполезные, т.к ничего не тестируют
вокруг ведь одни моки

Sergey
30.10.2016
16:14:45
как я тебя понимаю)
блин.... я на этих выходных очень жестко пожалел что последний свой проект я пилю без тестов
пару дней назад сел покрывать особо сложные куски юнит тестами (благо код вроде бы тестируем, а может и нет и от того все проблемы)
поскольку "я люблю phpspec" решил его взять и....
наткнулся на проблему. Фикстуры... подготовка данных нужна даже для юнит тестов.

Sergey
30.10.2016
16:16:41
это да, иногда нехреновое дерево приходится строить

Sergey
30.10.2016
16:16:53
как ты это хэндлишь? где точнее
у меня вырисовывается трейт в 1000 строк кода
куда я запихнул все что нужно что бы строить разные объекты
под разные типы
не ну не 1000, 400 где-то
там всякие билдеры подготавливаются и все незначительное забивается фэйковыми данными
(я ж не могу создать невалидную сущность))

Google

Sergey
30.10.2016
16:27:23
@Enleur короч это, к нашему холивару за принтеры и прочий булшит
мэппер + toArray для сериализации
вжопу принтеры
во всяком случае пока-что

Sergey
30.10.2016
16:32:30
как ты это хэндлишь? где точнее
изначально они все были прям внутри тестов, потом когда начали использоваться в нескольких тестах - вышли в отдельный метод, когда дело дошло до нескольких кейсов - в отдельный утиль класс)

Sergey
30.10.2016
16:32:49
)

Sergey
30.10.2016
16:32:54
но у каждого модуля свой набор в основном

Sergey
30.10.2016
16:33:20
размышлял на тему изоляции и SIP
и инкапсуляции

Admin
ERROR: S client not available

Sergey
30.10.2016
16:33:34
идея с принтерами норм, если что.
но только если мы не запихиваем знания о том как формируется сам json внутрь сущности
с точки зрения SRP
все тогда вообще будет офигенно
ни геттеров, ни toArray, стэйт не экспоузится наружу никак вообще

Sergey
30.10.2016
16:34:52
а если надо еще csv, xml, yaml?

Sergey
30.10.2016
16:34:55
но без лямбд, без кастылей... нормально не сделать. Точнее будет работать только в очень простом случае.
> а если надо еще csv, xml, yaml?
у тебя принтер собирает данные, и уже сам знает как чего делать
ну то есть... сущность такая "мая не знает зачем тебе это но на вот держи юзернейм мой"

Google

Sergey
30.10.2016
16:35:41
и пихает вообще все что есть
или что можно
но я еще думаю... при таком подходе слишком много тупого кода
и легко проиграть
но не так легко чем с мэпперами которые смотрят на мэппинги в yaml

Sergey
30.10.2016
16:42:29
тебе не кажется что ты инкапсуляцию начал воспринимать в абсолюте?)

Sergey
30.10.2016
16:45:15
@Enleur я просто размышляю. У меня в коде все так же много геттеров)
мне просто хочется знать как это делать когда все доведено до крайности
что бы понимать где лежит черта
когда это попахивает религиозной фигней
@Enleur https://github.com/nvinayshetty/DTOnator
клевая штука была бы

Yan?
30.10.2016
16:58:29
Есть простая страница с формой http://pastebin.com/aH2HwTeY
Есть скрипт, который отправляет два поля email и password на мыло, должен отправлять http://pastebin.com/LZQGvqNU
Отправка мыла на почту работает, если через терминал запустить скрипт. На скрине структура проекта.
После субмита через кнопку в test.html, вылетает ошибка на скрине-2.
То ли проблема в XAMPP-е, то ли в чем

Ilya
30.10.2016
17:14:35
чот с путями напутал ты

Yan?
30.10.2016
17:21:26
action="http://localhost/foo.php"
Я вот до сих пор понять не могу, как правильно прописывать путь в форме
и куда класть скрипт: в папку с html
или как

Aleh
30.10.2016
17:22:24
а как ты форму открываешь?
адрес какой?