
Владимир
31.01.2018
14:15:13
Так что или ставь гем под ето или в отдельную дерикторию все ошибки посылай и там обрабатывай

Vasiliy
31.01.2018
14:29:44
он не про это
он про валидации сущностей как я понял

Владимир
31.01.2018
14:34:30
валидация это всегда три кита: или не заморачиватся и гем, или немного напрячся и регулярка или посидеть вдумчиво и наваять что то оптимально под ситуацию

Google

Владимир
31.01.2018
14:35:12
но гем неизвестно какая дичь под капотом при установке а регулярки и фу-фу и ресурсы
для какой то банковской или криптографической дичи типа ецп не покатит уже
Нужно самому ручками
Юмор в том что для вроде бы одинаковых стринговых строк одни проверки избыточны по сложности а другие наоборот недостаточны
Что то стреднее создать под все не самое умное решение

Кирилл
31.01.2018
20:55:14
Привет, подскажите плз несведующему тостеру)
https://gist.github.com/KirillFurtikov/594cec6f061a0a8801ffb60de4e32d1b
Вот так сконфигурирован RSpec, но появилась необходимость добавить еще в before(:all) хук @bar = bar.foo, который должен всегда определяться, а предыдущий @foo фильтроваться. Можно так сделать: https://gist.github.com/KirillFurtikov/0fd53735255d1740f237bb5fe186af82
Но хочется узнать, есть ли другие варианты? Потому как при последнем придётся идти по всем спекам и навешивать на describe :filtered_hook, чтоб всё заработало как надо. Можно как-то без этого сделать?

Roman
31.01.2018
21:27:19
в смысле не вызывался?

Кирилл
31.01.2018
21:28:03

Roman
31.01.2018
21:28:06
ага

Кирилл
31.01.2018
21:28:07
ага
Просто там инициализация браузера, а она время лишнее отнимает, но не во всех спеках она нужна, потому думаю как фильтровать грамотно, но чтобы не пришлось все спеки рефачить

Roman
31.01.2018
21:29:20
ну обычно все-таки вешается тег

Google

Roman
31.01.2018
21:29:25
:js
те спеки. для которых нужен браузер - метятся :js
которые не нужен - не метятся
но вообще before(:all) - не самый правильный метод: а если ты весь сьют запускаешь?

Кирилл
31.01.2018
21:34:46
у нас спеки, на каждый инициализируется браузер т.к там одна фича и в рамках сессии браузера прогоняется. Каждый спек - новая сессия. Потому такой вариант работал идеально, так как браузер всегда нужнен (UI тесты), пока не решили тесты на апишку прикрутить

Roman
31.01.2018
21:36:27
так почему тогда не before(:each) ?
если оно на каждый спек должно срабатывать
а хотя так тоже будет работать да
ну да, вешаешь короче на все спеки с браузером тег

Кирилл
31.01.2018
21:39:31
Пардон, да, имел ввиду файл _spec.rb

Roman
31.01.2018
21:39:36
по-другому особо никак
можно сделать around и смотреть на путь к файлу, если request - не запускать
но это гемор
а вообще зачем вы руками браузер стартуете? селениум не используете?

Кирилл
31.01.2018
21:40:45
короче, придумал условие по if self.class.metadata[:js] воткнуть и скипать по нему, попробую, заведётся или нет
Селениум и так, но инициализировать где-то еще разве можно?

Roman
31.01.2018
21:43:03
ну так селениум сам наводится на тег :js

Кирилл
31.01.2018
21:43:05
Есть класс, который стартует селениум с нужными параметрами, а в before(;all) инициализируется, в after(:all) выходит

Roman
31.01.2018
21:43:07
если я ничо не путаю
у меня в спек хелпере
Capybara.register_driver :selenium do |app|
Capybara::Selenium::Driver.new(app, browser: :chrome, args: ['--window-size=1280,800'])
end

Google

Roman
31.01.2018
21:44:09
и больше я ничо руками не делаю

Кирилл
31.01.2018
21:44:11
Если все тесты изначально задуманы были на селениум, смысл тогда везде вешать этот тег?

Roman
31.01.2018
21:44:34
а не еще
Capybara.configure do |config|
config.javascript_driver = :selenium
end

Кирилл
31.01.2018
21:44:39
Ну там PageObject еще, которому нужен инстанс передавать)
ну вот, а у нас не Капибара, а чистый селениум

Roman
31.01.2018
21:45:05
все я понял

Кирилл
31.01.2018
21:45:32
Спасибо) Завелось вроде с проверкой метадаты)

Alexey
01.02.2018
07:23:32
Я тут синхронизирую базу sqlite в проекте с помошью syncthing. Что мне за это будет?

Владимир
01.02.2018
07:57:46
Хотел бы я сказать
но нет
Храни лучше в редиске тогда уже будет что то))

Alexey
01.02.2018
08:09:09
Да эту поделку то и проектом то сложно назвать. Мне надоело постоянно деплоить его. Там данных то 2к записей.

Владимир
01.02.2018
08:28:30
Данные динамический прирост или статика?
если статика с перезаписью да еше и размер ячеек фиксированный то перекинь на редискку и забей.
Как показывает практика быстродействие в мелких и средних решениях позволяет закрывать глаза на многие костыли
такие как некоректная работа с базой и данными

kolas
01.02.2018
09:14:14
никак
у update_all данные одинаковые в параметрах
а тебе разные нужно

Denis
01.02.2018
11:36:16
Скажите пожалуйста как тотально удалить все Гемы воообще

Google

Denis
01.02.2018
11:36:30
не могу удалить json говорит он дефолтный поэтому не буду и все
а мне надо
а то датамапер не работает (((((

Anton
01.02.2018
11:38:28
json это часть stdlib

Владимир
01.02.2018
11:40:11
Отключи на уровне исполнения и все
В чем вопрос?
Или еше изврашенее запрети из дериктории исполнения вызывать ненужные веши

Admin
ERROR: S client not available

Владимир
01.02.2018
11:40:59
Или обратная ситуация вызов только по вайтлисту
Но с вайтлистом ты наебешся
Потому как это линукс
И очень удобно подтягивать какие то левые зависсимости из жопы мира просто для того что бы было

Vasiliy
01.02.2018
11:50:01
чёто ты дичь какую-то несешь

Dan
01.02.2018
12:13:40
https://www.youtube.com/watch?v=tBONXbtiIR8

Владимир
01.02.2018
12:13:48
Файл под юзером с урезанным функционалом
Линукс. Права. Группы.
Гугл в помошь

Vasiliy
01.02.2018
12:14:47
чтобы юзать либу с нужной версией - нет

Владимир
01.02.2018
12:15:04
Если у тебя все под рутом вертится то мне тебя жаль

Google

Vasiliy
01.02.2018
12:15:21
и не под рутом да

Владимир
01.02.2018
12:15:30
я и не говорил про версии
Ты тупо директории отбиваешь

Vasiliy
01.02.2018
12:15:46
а у него проблема резолва версий

Владимир
01.02.2018
12:16:02
или файлы но это дичь по отдельностии
У него проблема в желании отключить то что не отключается

Vasiliy
01.02.2018
12:16:35
да, а потом съедаешь гавна вагонами из за того что валится не понятно где не понятно почему
у него проблема что он не врубает как бандл работает
и хочет в наскок нахуярить себе скрипт за 5 минут не разбираесь с тем как всё работает
это стать С++ программистом за 24 часа
если ты сервак с одним скриптом начинаешь в права ебать то ты явно что-то не так делаешь

Владимир
01.02.2018
12:24:40
Ситуации разные. Хотя нах ему джсон отбивать неведомо мне до сих пор

Vasiliy
01.02.2018
12:25:29
ну хуй знает что тебе надо - костылить на геме 7летней давности чтобы завелось или задачу решить

Владимир
01.02.2018
12:29:12
Если завелось то задача решена разве нет?

Vasiliy
01.02.2018
12:31:44
задача запустить гем?

Владимир
01.02.2018
12:32:47
Задача запустить без него как я понял
Вообшем ждем что чувак скажет

Roman
01.02.2018
12:48:35
сомневаюсь... про нокогири мы так подробностей и не услышали