@0x00, сорри что пишу здесь, просьба перепроверить тестовый стенд с заданиеями для backend-программистов, а именно Assert 11/14
Есть подозрение, что включен STRICT_TRANS_TABLES, из-за которого не произойдет обрезка Widowmaker до Widowm и assert не срабатывает.
Привет) Спасибо за репорт. Результат assert не проверяется на реальной БД.
Чаще всего неточность возникает с типом для поля id, туда подхождит INT, но он противоречит комментарию на поле Unique Autoincrement Key. В течение часа я добавлю id в тело assert, так всем станет понятно, что INT тип не подходит для этого поля)
Вот тут вообще стало все запутанно :)
SERIAL прокатило, но прикол в том что как раз в случае mysql (а в PDO явно указано, что это MySQL) можно указать INT(11) AUTO_INCREMENT, и это вполне себе верно, однако ж assert не пропускает. Если не путаю, в postgre надо явно SERIAL указывать.
Из доки по mysql:
SERIAL is an alias for BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE.
Все верно) Но INT(11) AUTO_INCREMENT - это уже два элемента указано. В данном тесте нужно наиболее меньшие выражение выбирать, где буквально одно слово.
Для верности задания явный сброс STRICT_TRANS_TABLES) И как писал в другом комменте, добавил явный вывод id и его знанения в тело assert, так точно будет исключен тип INT.