usox/hackmock

hacklang 的模拟框架

安装量: 1,711

依赖者: 4

建议者: 0

安全性: 0

星星: 7

关注者: 3

分支: 7

开放问题: 2

语言:Hack

v1.4.1 2021-01-21 07:31 UTC

README

Build Status

HackMock

为 hacklang 创建模拟对象 - 真的。

注意

由于使用了 eval,hackmock 可能在未来 hhvm 版本中停止工作。

什么功能正常?

  • 严格模式
  • 创建接口和具体类的模拟
  • 定义基本方法期望(参数验证,返回值定义)

什么功能不正常?

  • 其他所有功能,特别是涉及泛型等的罕见和/或未测试的案例。
use function Usox\HackMock\{mock, prospect};

class SomethingTest extends \Usox\HackMock\HackMock {

  public function testSomething() {
    $my_fine_class = mock(SomeInterface::class);

    prospect($my_fine_class, 'someMethodName')
      ->once()
      ->andReturn('some-fine-value');

    prospect($my_fine_class, 'someOtherMethodName')
      ->andThrow(new \Exception('foobar'));
  }
}