Как стать автором
Обновить

Комментарии 15

robinvdvleuten/php-ulid — Вместо обычного UUID, в качестве идентификаторов можно использовать ULID, который обладает рядом преимуществ, в частности, лексически монотонно возрастает, а значит его можно удобно сортировать.

На ум приходит только один вариант использования — primary key.
Какие еще есть варианты?
В мессенджерах, при создании сообщений на клиенте.
На разных клиентах/серверах монотонность будет соблюдаться только частично даже при условии идеальной синхронизации часов.
Key, но не primary :)
Обидно, что по Yii мало информации последнее время. пацриот во мне расстраивается
Очень печально если выбор технологии для вас больше религиозный/патриотический вопрос, чем обоснованный выбор.
p.s. Автор фреймворка Китаец, в чем патриотизм то?)

Патриотизм может быть не только к стране, но и к идее, к фреймворку.
Пс. Он японец вроде.

Он китаец, у него и имя китайское и самое название Yii произносится созвучно с китайским словом «простой и развивающийся».

Qiang Xue — китаец.

Авторов версии 2 несколько. Но да, патриотизм не должен быть критерием выбора.

Правильный способ делать assert в PHPUnit.

На этот вопрос уже давно ответил ментейнер PHPUnit
Обсуждение на гитхабе
Из документации
Если коротко, то правильным будет $this, но т.к. PHPUnit сплошное легаси 15-летней давности, никто его не будет переписывать только ради этого
Если коротко, то правильным будет $this
Думаю, что слово «правильным» тут абсолютно неуместно. Лучше сказать «каноничным».

И судя по комментариям в виде смайликов, большинство каноничный способ считают неправильным, что не удивительно.
Согласен, но я о другом.
Тесткейс это полноценный объект, он хранит свое состояние на протяжении всего запуска, методы test* нестатические. Однако в нем присутствуют также и статические ассерты. Обычно класс используется либо полностью статически, как какой-нибудь helper, либо всегда инстанцируется, а здесь почему-то смешаны оба подхода.
Поэтому в контексте инстанса более правильным и очевидным будет использование $this, естественно и методы тогда должны быть нормальными.
Либо (о чем упомянули в issue) реализовать статический фасад по типу Assert::assertEquals(). Мне этот вариант кажется наиболее корректным.
Думаю в PHPUnit сделали это для некоего удобства, вроде как кода писать меньше, сразу все инструменты под рукой и т.п. Сэкономили на спичках. Ну либо скопировали из JUnit не заморачиваясь.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.