public function testOverrideExpectation()
    {
        // 如果没有指定 expectation 调用次数, 那么每次调用 mock 的 expectation 方法都会返回第一个 expectation
        $mock = \Mockery::mock();
        $mock->shouldReceive('foo')->andReturn('green');
        $mock->shouldReceive('foo')->andReturn('blue');
        $this->assertEquals('green', $mock->foo());

        // 第一个 expectation 指定了只调用一次, 所以下面第二次调用的时候返回了 blue
        $mock = \Mockery::mock();
        $mock->shouldReceive('foo')->once()->andReturn('green');
        $mock->shouldReceive('foo')->andReturn('blue');
        $this->assertEquals('green', $mock->foo());
        $this->assertEquals('blue', $mock->foo());
    }

 

相关文章:

  • 2022-02-24
  • 2021-08-10
  • 2022-12-23
  • 2021-12-15
  • 2021-05-25
猜你喜欢
  • 2021-05-26
  • 2021-10-29
  • 2021-06-12
  • 2022-02-01
  • 2022-01-06
  • 2021-09-22
相关资源
相似解决方案