
Mikhail
30.11.2016
12:02:52
У меня в проекте пришел АА и парень разраб в довесок. И вот заказчик просит поменять дизайн админки. Поставили тему какую то. Красивей не стало)
я даже поставил и попробовал october
очень классная штука для
Список статей
Список постов
список тем

Google

Alex
30.11.2016
12:04:42
Чо как тебе?

Mikhail
30.11.2016
12:04:49
Доволен
я тогда весь вечер поковырял
гибкая, CMS для разраба

Alex
30.11.2016
12:05:33
Это CMF по сути

Mikhail
30.11.2016
12:05:33
плюс свои модельки можно крутить без анальной боли
да я помню, ты говорил

Alex
30.11.2016
12:05:46
да, там laravel inbuilt, очень круто.

Igor
30.11.2016
12:06:05
http://ichef-1.bbci.co.uk/news/624/cpsprodpb/17FB7/production/_92713289_66661ec0-c3a7-4259-9260-b98d49b25a2f.jpg

Mikhail
30.11.2016
12:06:11
да видел) Вообщем если придется вдруг сайт визитку собирать
Я знаю на чем делать
Вопрос в том, что лара врятли shared хоста поддерживает и деплоить придется на VPS

Alex
30.11.2016
12:06:35
я пока еще не умею в простые решения :(

Google

Alex
30.11.2016
12:06:42
а почему нет?
у меня знакомый _вроде бы_ на шареде держал

Mikhail
30.11.2016
12:07:07
на форуме видел что с5й ларой чтото не так
кстати у них даже свой капистрано пыховский есть)
все выдернули с рельсы
http://rocketeer.autopergamene.eu/
Но на офф сайте вроде даже и говорят, что 5я ларавель это совокупность лучших наработок в том числе из рельсы

Alex
30.11.2016
12:54:37
Ненавижу когда у контроллера сложные зависимости чтобы его протестировать
вплоть до того что никто не знает совокупность всего что ему нужно для работы

Mikhail
30.11.2016
13:06:47
контроллер это роутер логики, по сути его тест должен быть какие обьекты каких классов в нем должны быть
все логику надо вытаскивать в классы и тестить отдельно

Alex
30.11.2016
13:10:51
Мокать контроллер тоже так себе идейка
если мокаешь контроллер то тест не интеграционный получается.

Mikhail
30.11.2016
13:11:13
что значит мокать контроллер

Alex
30.11.2016
13:11:17
Тогда как тебе поведение надо тестировать

Mikhail
30.11.2016
13:11:25
прокидываешь парамы, тестишь результат
поведение какое? Контроллер не должен содержать никакого логического поведения в идеале

Alex
30.11.2016
13:11:49

Mikhail
30.11.2016
13:12:03
апи должно быть не в контроллере

Alex
30.11.2016
13:12:07
Мы тестируем что контроллер ведет себя как ожидается

Google

Alex
30.11.2016
13:12:16

Mikhail
30.11.2016
13:12:43
хз, в классе third party api, во view object

Антон
30.11.2016
13:12:43
ахаха

Mikhail
30.11.2016
13:12:45
где хочешь
контроллер вот @pages = { params for view }

Антон
30.11.2016
13:13:09

Mikhail
30.11.2016
13:13:13
ок)

Alex
30.11.2016
13:13:35
Если у меня экшен завист от реалтаймового запроса к апишке, то где я этот вызов делаю если не в контроллере?

Сергей
30.11.2016
13:13:56

Mikhail
30.11.2016
13:14:05
В сервисе делаешь
да

Alex
30.11.2016
13:14:10
а Api.fetch это не своеобразный сервис объект?

Alex
30.11.2016
13:14:29
Хорошо, зачем нужен контроллер если все в сервис объекте?

Mikhail
30.11.2016
13:14:39
классно у тебя сервис вызывается
Service.method
end
прям как надо
а сорян
криво прочитал
ну ты не мокаешь контроллер
ты тести сервис
а в контроллер отправляя парамы асигни что в обьекте должно лежать то

Google

Mikhail
30.11.2016
13:15:54
что должен вызваться сервис

Антон
30.11.2016
13:16:33
я не понял, Михайло, какую проблему ты пытаешься щас решить :)

trickster
30.11.2016
13:17:00
проблему отсутствия проблем

Mikhail
30.11.2016
13:17:05
Я пытаюсь сказать что тест апишки должен быть там, где это апишка лежит
в отдельном сервисе

Антон
30.11.2016
13:17:20
а наверное так и просходит

Mikhail
30.11.2016
13:17:50
А в контроллере ты тестишь только что должно быть в обьектах, которые ты возвращаешь во вью. Никакой логики. Никаких вызовов

Антон
30.11.2016
13:17:56

Mikhail
30.11.2016
13:18:20
Контроллер получил парам. Отдал в логику. Получил результат, отдал во вью

Admin
ERROR: S client not available

Mikhail
30.11.2016
13:18:54
Тестить сложнее

Антон
30.11.2016
13:19:09
черно-белое все какое-то

Alex
30.11.2016
13:19:19
кто тебе сказал что я в контроллере тестирую апишку

Mikhail
30.11.2016
13:19:34
Ты сказал что из контроллера вызываешь стороннюю апи и мокаешь

Alex
30.11.2016
13:19:36
я в контроллере ее дергаю, и тестирую все в сборе. Апишка отдельно юнит тестом тестируется
Я мокаю http ответ апишки но не сам класс

Mikhail
30.11.2016
13:19:48
Ну вот
то есть ты за повторил то о чем я говорю, но с намеком что я сказал чтото не то

Google

Alex
30.11.2016
13:20:23
Я к тому что лучше лишний раз проверить все интеграционно чем где то обломаться.

Mikhail
30.11.2016
13:21:00
Если ты пишешь тест до кода на каждый "так сказать модуль, блок кода(логики)" то обломаться у тебя врятли чтото сможет.
И в совокупности оно отработает нормально

Alex
30.11.2016
13:21:25
до тех пор пока ты все в сборе не запустишь и наткнешься на конфиг/глобальный стейт или еще какую фигню
Вот как раз в совокупности оно может обломаться, вот в чем проблема
я даже больше скажу, оно может сломаться при деплое на прод даже если каждый кусок протестирован вроде бы
потому что конфиг кривой.

Mikhail
30.11.2016
13:22:26
в solid первый принцип единственной ответственности есть. И если постараться его соблюдать, не отвалится ничего

Alex
30.11.2016
13:22:38
ага, принцип единственной ответственности и Rails
ну да ну да.
Один AR сразу весь solid сожрал

Mikhail
30.11.2016
13:22:50
За рельсу пусть отвечает DHH

Антон
30.11.2016
13:22:53
ахаха

Mikhail
30.11.2016
13:22:57
я буду отвечать за свои буквы)

Антон
30.11.2016
13:23:12
красавчеки, вы так даже истину родите скоро
без сарказма

Alex
30.11.2016
13:23:33
не ну просто забавно слушать про солди тогда как почти каждый рельсовик активно юзает AR

Mikhail
30.11.2016
13:23:49
каждый рельсовик не пишет AR

I
30.11.2016
13:23:52

Alex
30.11.2016
13:24:06

Mikhail
30.11.2016
13:24:12
нигде

Антон
30.11.2016
13:24:30