spameri / dependency-mocker
为Nette框架通过Mockery加载依赖到模拟类。
v2.0.0
2022-02-10 08:59 UTC
Requires
- mockery/mockery: ^1.0
Requires (Dev)
- nette/tester: 2.1.0
README
为Nette框架通过Mockery加载依赖到模拟类。
使用方法
设置
禁止的类
数据实体,具有不同mockery魔法的类(例如 __getStatic()
)等。
Spamer\DependencyMocker\Mocker::setBannedClasses([
App\Entity\BaseEntity::class,
App\GetStatic::class,
]);
模拟类
$basePresenter = Spamer\DependencyMocker\Mocker::mockClassDependencies(App\BasePresenter::class);
魔法
BasePresenter中的方法
$basePresenter->shouldReceive('add')->andReturn(1);
访问BasePresenter的依赖并设置Mockery逻辑。
私有属性
Spamer\DependencyMocker\Mocker::getProperty(
App\BasePresenter::class,
'articleModel',
$basePresenter
)
->shouldReceive('save')->once();
公共属性
$basePresenter->articleModel->shouldReceive('save')->once();