Mocking with a Closure
还没有人认领这个 Issue。
评估
调研方向
使用 dev/ez-mock/test/Demo.php 中的 Demo 类在 dev/ez-mock/test/DemoTest.php 中重现失败,然后通过 vendor/codeception/aspect-mock/src/AspectMock/Core/Mocker.php 跟踪调用。将 closure mock 调用与测试预期的 abcabc 结果进行比较;当专门的 PHPUnit 测试在没有缺少参数错误的情况下通过时,即表示完成。
由索引模型根据 Issue 内容生成。
描述
For the following class
class Demo {
public function aFunc() {
return 'initialFunc';
}
}
I have written the following test that mocks the class replacing aFunc with a closure as follows
class DemoTest extends PHPUnit_Framework_TestCase {
public function testWithClosure() {
\AspectMock\Test::double(Demo::class, [
'aFunc' => function($a) { return $a.$a; },
]);
$mockDemo = new Demo();
$this->assertEquals('abcabc', $mockDemo->aFunc('abc'));
}
}
When I run it, I get the following error
$ ../vendor/bin/phpunit .
PHPUnit 4.8.35 by Sebastian Bergmann and contributors.
E
Time: 222 ms, Memory: 7.25MB
There was 1 error:
1) DemoTest::testWithClosure
Missing argument 1 for Demo::{closure}()
dev/ez-mock/test/DemoTest.php:10
dev/ez-mock/vendor/codeception/aspect-mock/src/AspectMock/Core/Mocker.php:154
dev/ez-mock/vendor/codeception/aspect-mock/src/AspectMock/Core/Mocker.php:79
dev/ez-mock/vendor/codeception/aspect-mock/src/AspectMock/Core/Mocker.php:28
dev/ez-mock/vendor/codeception/aspect-mock/src/AspectMock/Intercept/before_mock.php:3
dev/ez-mock/test/Demo.php:4
dev/ez-mock/test/DemoTest.php:13
FAILURES!
Tests: 1, Assertions: 0, Errors: 1.
What am I doing wrong?
- 主要语言
- PHP
- 星标
- 785
- 派生
- 132
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
Codeception/AspectMock 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 35/100
Codeception/AspectMock#208 · 2 条评论 · 5 个 reaction ·
-
难度 3/5 1-2 天 新手友好度 25/100
Codeception/AspectMock#206 ·
-
难度 3/5 1-2 天 新手友好度 35/100
Codeception/AspectMock#203 ·
-
难度 1/5 1 小时以内 新手友好度 35/100
Codeception/AspectMock#202 · 5 条评论 · 2 个 reaction ·
-
难度 3/5 1-2 天 新手友好度 42/100
Codeception/AspectMock#201 · 1 条评论 ·
查看 Codeception/AspectMock 的全部 Issue
相似的 Issue
-
Bug Enhancement Performance
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
Feature Status: Needs Triage
难度 2/5 1-3 小时 新手友好度 73/100
维护者通常 1 天内回复
-
frontend low-priority
难度 2/5 1-3 小时 新手友好度 77/100
mplodowski/dynamicpdf-plugin#336 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 68/100
AdvancedCustomFields/acf#1044 ·
-
Add Zammad可能已有人在做 @Arslan-TR 今天认领。 未关闭request
难度 2/5 1-3 小时 新手友好度 66/100
endoflife-date/endoflife.date#11298 · 1 条评论 ·
维护者通常 1 天内回复