Комментарии 15
laminat
robinvdvleuten/php-ulid — Вместо обычного UUID, в качестве идентификаторов можно использовать ULID, который обладает рядом преимуществ, в частности, лексически монотонно возрастает, а значит его можно удобно сортировать.
На ум приходит только один вариант использования — primary key.
Какие еще есть варианты?
Обидно, что по Yii мало информации последнее время. пацриот во мне расстраивается
Очень печально если выбор технологии для вас больше религиозный/патриотический вопрос, чем обоснованный выбор.
p.s. Автор фреймворка Китаец, в чем патриотизм то?)
p.s. Автор фреймворка Китаец, в чем патриотизм то?)
Правильный способ делать assert в PHPUnit.
На этот вопрос уже давно ответил ментейнер PHPUnit
Обсуждение на гитхабе
Из документации
Если коротко, то правильным будет $this, но т.к. PHPUnit сплошное легаси 15-летней давности, никто его не будет переписывать только ради этого
Согласен, но я о другом.
Тесткейс это полноценный объект, он хранит свое состояние на протяжении всего запуска, методы test* нестатические. Однако в нем присутствуют также и статические ассерты. Обычно класс используется либо полностью статически, как какой-нибудь helper, либо всегда инстанцируется, а здесь почему-то смешаны оба подхода.
Поэтому в контексте инстанса более правильным и очевидным будет использование $this, естественно и методы тогда должны быть нормальными.
Либо (о чем упомянули в issue) реализовать статический фасад по типу Assert::assertEquals(). Мне этот вариант кажется наиболее корректным.
Думаю в PHPUnit сделали это для некоего удобства, вроде как кода писать меньше, сразу все инструменты под рукой и т.п. Сэкономили на спичках. Ну либо скопировали из JUnit не заморачиваясь.
Тесткейс это полноценный объект, он хранит свое состояние на протяжении всего запуска, методы test* нестатические. Однако в нем присутствуют также и статические ассерты. Обычно класс используется либо полностью статически, как какой-нибудь helper, либо всегда инстанцируется, а здесь почему-то смешаны оба подхода.
Поэтому в контексте инстанса более правильным и очевидным будет использование $this, естественно и методы тогда должны быть нормальными.
Либо (о чем упомянули в issue) реализовать статический фасад по типу Assert::assertEquals(). Мне этот вариант кажется наиболее корректным.
Думаю в PHPUnit сделали это для некоего удобства, вроде как кода писать меньше, сразу все инструменты под рукой и т.п. Сэкономили на спичках. Ну либо скопировали из JUnit не заморачиваясь.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
PHP-Дайджест № 154 (9 – 21 апреля 2019)