Andrei
ладно, спасибо. Сделаю oneToOne, некритично, чем там бойлерплейт городить
Sanan
можно и так
Sanan
всех с празником)
artem
Каким?
Vlad
А у нас много праздников в этот день?
artem
Да. У вас один
artem
Я праздную др Янковского
artem
всех с празником)
Не хотел. Но ладно. Кто-то служил в советской армии?
Юра
Самый лучший праздник был бы если прилетели бы инопланетяне и забрали все оружие у людей. Глядишь начали бы думать о других вещах
Юра
А денег потраченных на войны зватило бы накормить всех голодных на земле
Vlad
Но так не работает)
Vlad
Но так не работает)
Проблема же не в оружии, а в том что люди не умеют договариваться
artem
Тут наоборот. раздали оружие всем)) на крик лара сотня выстрелов
Юра
А для тех кто ну не может без оружия сделали бы резервацию в Африке, и пусть там бегали бы стреляли друг в друга
Юра
А лучше в ВР
Юра
Проблема же не в оружии, а в том что люди не умеют договариваться
Ну типо наверное теоретически проблема из-за ограниченности ресурсов
Юра
Если представить что ресурсы безграничны, то типл нафиг воевать )
Vlad
Иногда человек сам с собой договариваться не может, а мы тут говорим о странах
Sanan
А денег потраченных на войны зватило бы накормить всех голодных на земле
это не выгодно производителям вооружения, а у них очень сильное лобби во всем мире)
Sanan
Не хотел. Но ладно. Кто-то служил в советской армии?
сомневаюсь что тут есть такие старички, я 91 года)
Sanan
есть еще кинцо с николасом кейджем - оружейный барон))
Sanan
помимо торговли в белую оружием, есть еще черный рынок) там тоже большие деньги крутятся
Юра
Вообще неплохая была идея с ядерным сдерживанием. Типо никто в здравом уме не полезет на страну с ядерным оружием. Но что-то пошло не так
Sanan
я недавно слышал шутку про польшу, на фоне того, что ей исторически не везет, и ее все время захватывали и тд, то если прилетят инопланетяне, то первым они бахнут по польше
Юра
Та мне кажется они скажут, блин тут вся планета в каких-то тараканах двуногих, несите диклофос
Sanan
ахахаха
The Ant
ахах, есть фильм с киану ривзом - "День когда земля остановилась", как раз про дихлофос 🤣
Юра
Вово
Sanan
у меня недавно теория одна возникла про инопланетян
Юра
А есть вообще фильм в котором все зашибись случается в будущем?
The Ant
не припомню
Sanan
а что если другие развитые цивилизации, развивались таким же путем как и мы, создали там всякие метавселенные, и живут там, никуда за пределы своей звездной системы не вылезая. поэтому мы никого не видем
Sanan
😅
Sanan
живут в виртуальности, как в матрице
Sanan
тоже вполне вероятно
Sanan
мы неписи в их вселенной, просто черезчур развитые
Sanan
у нас тут крутой ии
Юра
мы неписи в их вселенной, просто черезчур развитые
Ну развитость относительно чего нужно измерять. Может в их вселенной мы как раз на уровне муравьев примерно
Sanan
ну да, вполне себе
Павел
Приветствую. Странный кейс, но мб кто-то встречался. Установил пакет gesdinet/jwt-refresh-token-bundle И начал падать ci что отсутсвует коннект к базе, еще до тестов. SQLSTATE[HY000] [2002] Connection refused Есть cli комманда симфони, которая ждет, когда поднимется БД. Но падение во время вызова этой команды (до захода в ее тело). Такое ощущение, что бандл куда то внедряется в процесс и обращается в БД. Дебажил, пока ничего не нашел. Причем локально не могу воспроизвести, даже если полностью роняю контейнер БД. Выполняется штатно симфони комманда, пытаясь достучаться до БД.
Юра
Он там ивенты атачит какие-то и к бд там обращается
Юра
Так что вполне возможно
Юра
Поставь брейкплинт где-то в доктрине и посмотри стак трейс
Юра
Или свардампи трейс
Павел
Он там ивенты атачит какие-то и к бд там обращается
Проблему нашел, но пока как исправить хз. При сборке контейнера, происходит маппинг сборк кэша доктрины, а там в суперклассе сущности бандла стоит GeneratedStrategy = auto и он на этом месте лезет в БД. Проблема в том, что этот супер класс лоадится бандлом чисто по файловой директории. Пока не пойму как это исключить
Юра
Звучит как какой-то косяк с сайд эффектами
Юра
А зачем он лезет в БД
Юра
Проверить что бд поддерживает?
Павел
А зачем он лезет в БД
Доктрина по БД понимает, что будет в Strategy=auto
Павел
для мускула - автоинкремент, для посгреса - секвенс
Юра
Ну непонятно зачем лезть в бд
Юра
Это и так известно по параметру, мускуль там или постгрес
Павел
Ну непонятно зачем лезть в бд
Ну вот в доктрине так
Юра
Типо, эй постгрес, ты постгрес или нет )
Павел
Короче надо как то исключить маппинг сущностей, который подхыватывается из бандла. Но что то пока не соображу как
Юра
Ивент на лоад класс метадата
Юра
Можно менять метаданные доктрины там
Павел
Ивент на лоад класс метадата
Звучит интересно, но решил штатными методами, так как xml : https://github.com/symfony/symfony-docs/issues/17646 https://github.com/symfony/symfony-docs/issues/7076
Alexey Mishurovskiy
почему при имплементации SerializerAwareInterface сериалазйер не ижектится в сервис
Vlad
потому что не включен автовайринг поди
Юра
Подскажите зачем писать юнит тесты если есть e2e тесты которые покрывают юнит тесты?
Юра
Ну в плане система работает как ожидается
Юра
Это как валидировать в каждой фции параметры которые она получает, вместо валидейшн баундари
Юра
Что конкретно дают эти тесты учитывая сколько времени и денег уходит на их написание и поддержание?
Vlad
Подскажите зачем писать юнит тесты если есть e2e тесты которые покрывают юнит тесты?
а еще в том, что ты можешь загнать в датасет 30-40 различных поведений и проверить разные результаты, которые проверят конкретно отдельный кусок программы
Павел
Что конкретно дают эти тесты учитывая сколько времени и денег уходит на их написание и поддержание?
Имхо: Юнит и e2e не должны пересекаться. Ну либо я не понимаю e2e. Т.е. есть какой то блок, в котором 10 возможных кейсов. Его выделяют в чистую функцию класс, тестируют только этот блок в юните, а не в e2e весь сценарий и 10 сценариев этого блока в совокупностями с другими штуками. Ну и набор данных можно разный подсунуть, + некоторые данные чисто для примера, как что должно работать, чтобы другие разработчики поняли смысл. Типа как дока )
Павел
Вот пример: Прилетают различные урлы из внешнего сервиса, есть парсер урлов по регекспу и еще всякой штуке. На выходе чистый массив(дто), который надо сохранить в БД. Зачем мне писать e2e в которм делать мок, из которого эти урлы получаются, потом проверять их корректность и наличие в БД, для каджого кейса. Долго = дорого. А могу написать простой быстрый юнит чисто на парсер, а не на весь сценарий от скачки до сохранения в БД, куда приходит строка урл, а выходит массив/дто. И кучку данных в датапровайдере. Простой и быстрый тест, который еще и как дока, показывает корректные вход и выход
Юра
Понятно согласен
Юра
Такими юнитами в симфе я вижу сервисы и согласен они должны быть по максимуму покрыты
Юра
Плюс когда пишешь юнит тесты, заодно сами собой всплывают косяки архитектуры
Dmitry
Такими юнитами в симфе я вижу сервисы и согласен они должны быть по максимуму покрыты
Да, юнит-тестами достаточно протестировать основные классы и функции с логикой (сервисы и сущности, которые что-то считают или переключают)
Dmitry
Плюс когда пишешь юнит тесты, заодно сами собой всплывают косяки архитектуры
Поэтому полезнее зайти дальше и начать писать юнит-тесты до кода юнита или одновременно с ним. Тогда сразу получается архитектурный и легкотестируемый код.
Юра
Мне кажется сейчас можно написать тест и попросить чатгпт написать функцию которая его удовлетворит)
Dmitriy
У юнитов свои минусы тоже есть, они более хрупкие
Dmitriy
А функциональные более стойкие к рефакторингу