Codeception / Codeception/AspectMock
basic mock is not working
- 主要言語
- PHP
- スター
- 784
- フォーク
- 132
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
under objects/system
no name space
```
`class UserCheck
{
public $name;
public function setName($name){
return $this->name = $name;
}
public function save(){
return 10;
}
public function getName(){
return $this->name;
}
}`
```
under tests\codeception\unit\objects\system
```
` class EmployeeTest {
function testUserCreate()
{
$user = test::double('UserCheck', ['save' => null])->make();
$this->assertEquals('null', $user->save());
}
}`
```
composer.json
```
` "codeception/aspect-mock": "2.2.0",
"phpunit/phpunit": "5.7.27",
`
```
tests/codeception/_bootstrap.php
```
`require __DIR__.'/../../../../tools/tests/vendor/autoload.php';
$kernel = \AspectMock\Kernel::getInstance();
// https://github.com/Codeception/AspectMock#customization
$kernel->init([
'debug' => true,
'cacheDir' => __DIR__.'/_cache', // Cache is disabled because it wasn't being flushed reliably when the code was changed.
'appDir' => __DIR__.'/../../../../tools/tests/vendor',
'includePaths' => [
__DIR__.'/../../objects', // Mock everything in the objects dir
]
]);`
```
error
```
` codeception/unit/objects/system/EmployeeTest.php:testUserCreate
Failed asserting that 10 matches expected 'null'.
`
```
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
Start with tests/codeception/unit/objects/system/EmployeeTest.php:testUserCreate and reproduce the failure using the versions in composer.json. Read tests/codeception/_bootstrap.php and the UserCheck example under objects/system to determine why the basic mock does not override save(); done means the test passes with save() returning null.
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- php
- 領域
- testing
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100