public function testMatch_FullMatchWithGaps()
 {
     \Phake::reset($this->mockMatcher2);
     \Phake::when($this->mockMatcher2)->matches(\Phake::anyParameters())->thenReturn(false);
     \Phake::when($this->mockMatcher2)->matches($this->stubEvent5)->thenReturn(true);
     $this->assertTrue($this->testSubject->matches(array($this->stubEvent1, $this->stubEvent2, $this->stubEvent3, $this->stubEvent4, $this->stubEvent5)));
     \Phake::verify($this->mockMatcher1)->matches($this->stubEvent1);
     \Phake::verify($this->mockMatcher1, \Phake::never())->matches($this->stubEvent2);
     \Phake::verify($this->mockMatcher1, \Phake::never())->matches($this->stubEvent3);
     \Phake::verify($this->mockMatcher1, \Phake::never())->matches($this->stubEvent4);
     \Phake::verify($this->mockMatcher1, \Phake::never())->matches($this->stubEvent5);
     \Phake::verify($this->mockMatcher2, \Phake::never())->matches($this->stubEvent1);
     \Phake::verify($this->mockMatcher2, \Phake::times(1))->matches($this->stubEvent2);
     \Phake::verify($this->mockMatcher2, \Phake::times(1))->matches($this->stubEvent3);
     \Phake::verify($this->mockMatcher2, \Phake::times(1))->matches($this->stubEvent4);
     \Phake::verify($this->mockMatcher2, \Phake::times(1))->matches($this->stubEvent5);
     \Phake::verify($this->mockMatcher3, \Phake::never())->matches($this->stubEvent1);
     \Phake::verify($this->mockMatcher3, \Phake::never())->matches($this->stubEvent2);
     \Phake::verify($this->mockMatcher3, \Phake::never())->matches($this->stubEvent3);
     \Phake::verify($this->mockMatcher3, \Phake::never())->matches($this->stubEvent4);
     \Phake::verify($this->mockMatcher3, \Phake::never())->matches($this->stubEvent5);
     \Phake::verify($this->mockMatcher3)->matches(null);
 }
Example #2
0
 /**
  * Tests that resetting a mock clears the stubber
  */
 public function testResettingStubMapper()
 {
     $mock = Phake::mock('PhakeTest_MockedClass');
     Phake::when($mock)->foo()->thenReturn(42);
     $this->assertEquals(42, $mock->foo());
     Phake::reset($mock);
     $this->assertNull($mock->foo());
 }