$post = $this->getMockBuilder('\app\model\Order')
->disableOriginalConstructor()
->setMethods(
[
'build',
'getQueryBuilder',
'getSchema',
'getTableSchema',
'primaryKey',
'findOne',
'createCommand',
'queryOne',
'queryAll',
])
->getMock();
$idColumn = (new ColumnSchema());
$idColumn->name = 'id';
$numberColumn = (new ColumnSchema());
$idColumn->name = 'number';
$tableSchema = $this->createMock(TableSchema::class);
$tableSchema->name = 'order';
$tableSchema->fullName = 'order';
$tableSchema->primaryKey = ['id'];
$tableSchema->columns = [
$idColumn,
$numberColumn
];
$post->method('getSchema')->willReturnSelf();
$post->method('getQueryBuilder')->willReturnSelf();
$post->method('build')->willReturn(['one', [':qp0' => "48671"]]);
$post->method('getTableSchema')->willReturn(
$this->createMock(TableSchema::class)->name
);
$post->method('createCommand')->willReturnSelf();
$post->method('queryOne')->willReturnSelf();
$post->method('queryAll')->willReturnSelf();
$post->primaryKey = 'id';
$post->columns = ['name'];
$post->method('findOne')->willReturn('hello');
return $post;
Вот правда, я не понимаю, про что речь идет, чт онаписали более 10 лет назад. Я использую yii2, phpunit 9.5. Что именно написали более 10 лет назад?сначала один вопрос: а тебе обязательно выкапывать эту стюардессу, которую написали больше лет 10 назад?
нельзя трахаться с чем-то более свежим?
вот @AmdY написал как - автогенерированные классы вообще не редактируешь, делаешь свои классы со своими методами, которые не наследуются от AR, их покрываешь тестами,Ну я прищел на проект. Задача стоит - сделать тесты с моками. Я так понимаю, что ответа у вас на мой вопрос нет
только в 3ке уже есть автопривязка зависимостей, в 2ке подобную фабрику надо самому из контейнера доставать$user = $arFactory->createAR(User::class);
а решение обычно звучит как "пишите без фасадов" , и возьмите, наконец, Symfonyданный кейс - это проблема yii, где всё на реальной статике, а не на фасадах как прекрасном Ларавел от святого Тейлора.
Насчет рынка - не знаю. Нет у меня данных. А вот что серьезного могло бы появиться? Я кстати согласен, что фич крутых не появляется, но мне трудно представить какие-нибудь прорывные вещи... Все же есть... что еще надо?ничего серьезного в самом фреймвоке за последние лет 5 не появилось, а рынок отбирают пайтон с нодой
Это фейки. Нормально в Ларавеле тестировать, с фасадами даже удобнее чем Симфони.а решение обычно звучит как "пишите без фасадов" , и возьмите, наконец, Symfony
в Laravel все было зеркально наоборот, но с похожим результатом: если в yii команда отказалась от денег, и продолжали играть со своей прелестью, так ничего за 10 лет и не сделав, то Тейлор наоборот взял денег у инвесторов, занялся маркетингом, переманил к себе индусов, а потом пришли инвесторы, и сказали, хватит играть со своей прелестью, гони выручку - и он занялся бесконечными платными подписными игрушками, ничего серьезного в самом фреймвоке за последние лет 5 не появилось, а рынок отбирают пайтон с нодой
не правда, я понимаю говнистость статика, но возможно это простейший способ придти к сути. компоненты то те же что и симфония. ну доктрина на аналог поменялось, домен то написан не зависимо.laravel не предложил больше ничего
Билдят везде по разному, потому никто k8s и т.д. не предлагают. А дев образ из коробки само то, а то все страдают с денвером и оуенсервером в 2022.прости, это и есть показатель, что развития фреймвока нет - только пиар и платный сервис
за 5 лет они смогли аж образ для dev-окружения в docker-compose сделать, без swarm, k8s, облаков, пайплайнов сборки?
вообще-то вопрос пары часов