| @@ 11-50 (lines=40) @@ | ||
| 8 | * @author Kristjan Siimson <[email protected]> |
|
| 9 | * @package Shifter\Test |
|
| 10 | */ |
|
| 11 | class FirstMatchAfterShifterTest extends \PHPUnit_Framework_TestCase |
|
| 12 | { |
|
| 13 | public function testIfMatchKeepDate() |
|
| 14 | { |
|
| 15 | $evaluator = $this->mockEvaluator(); |
|
| 16 | $evaluator->expects($this->any())->method('is')->will($this->returnValue(true)); |
|
| 17 | $firstMatchAfterShifter = new FirstFrom($evaluator); |
|
| 18 | $this->assertEquals('2015-02-01', $firstMatchAfterShifter->shift('2015-02-01')); |
|
| 19 | } |
|
| 20 | ||
| 21 | /** |
|
| 22 | * @return \PHPUnit_Framework_MockObject_MockObject |
|
| 23 | */ |
|
| 24 | private function mockShifter() |
|
| 25 | { |
|
| 26 | return $this |
|
| 27 | ->getMockBuilder('COG\ChronoShifter\Shifter\Shifter') |
|
| 28 | ->setMethods(array('shift')) |
|
| 29 | ->getMock(); |
|
| 30 | } |
|
| 31 | ||
| 32 | /** |
|
| 33 | * @return \PHPUnit_Framework_MockObject_MockObject |
|
| 34 | */ |
|
| 35 | private function mockEvaluator() |
|
| 36 | { |
|
| 37 | return $this |
|
| 38 | ->getMockBuilder('COG\ChronoShifter\Evaluator\Evaluator') |
|
| 39 | ->setMethods(array('is')) |
|
| 40 | ->getMock(); |
|
| 41 | } |
|
| 42 | ||
| 43 | public function testIfNotMatchIncrementDate() |
|
| 44 | { |
|
| 45 | $evaluator = $this->mockEvaluator(); |
|
| 46 | $evaluator->expects($this->any())->method('is')->will($this->onConsecutiveCalls(false, false, true)); |
|
| 47 | $firstMatchAfterShifter = new FirstFrom($evaluator); |
|
| 48 | $this->assertEquals('2015-02-03', $firstMatchAfterShifter->shift('2015-02-01')); |
|
| 49 | } |
|
| 50 | } |
|
| 51 | ||
| @@ 11-50 (lines=40) @@ | ||
| 8 | * @author Kristjan Siimson <[email protected]> |
|
| 9 | * @package Shifter\Test |
|
| 10 | */ |
|
| 11 | class FirstMatchBeforeTest extends \PHPUnit_Framework_TestCase |
|
| 12 | { |
|
| 13 | public function testIfMatchKeepDate() |
|
| 14 | { |
|
| 15 | $evaluator = $this->mockEvaluator(); |
|
| 16 | $evaluator->expects($this->any())->method('is')->will($this->returnValue(true)); |
|
| 17 | $firstMatchBeforeShifter = new LastTo($evaluator); |
|
| 18 | $this->assertEquals('2015-02-01', $firstMatchBeforeShifter->shift('2015-02-01')); |
|
| 19 | } |
|
| 20 | ||
| 21 | /** |
|
| 22 | * @return \PHPUnit_Framework_MockObject_MockObject |
|
| 23 | */ |
|
| 24 | private function mockShifter() |
|
| 25 | { |
|
| 26 | return $this |
|
| 27 | ->getMockBuilder('COG\ChronoShifter\Shifter\Shifter') |
|
| 28 | ->setMethods(array('shift')) |
|
| 29 | ->getMock(); |
|
| 30 | } |
|
| 31 | ||
| 32 | /** |
|
| 33 | * @return \PHPUnit_Framework_MockObject_MockObject |
|
| 34 | */ |
|
| 35 | private function mockEvaluator() |
|
| 36 | { |
|
| 37 | return $this |
|
| 38 | ->getMockBuilder('COG\ChronoShifter\Evaluator\Evaluator') |
|
| 39 | ->setMethods(array('is')) |
|
| 40 | ->getMock(); |
|
| 41 | } |
|
| 42 | ||
| 43 | public function testIfNotMatchIncrementDate() |
|
| 44 | { |
|
| 45 | $evaluator = $this->mockEvaluator(); |
|
| 46 | $evaluator->expects($this->any())->method('is')->will($this->onConsecutiveCalls(false, false, true)); |
|
| 47 | $firstMatchBeforeShifter = new LastTo($evaluator); |
|
| 48 | $this->assertEquals('2015-01-30', $firstMatchBeforeShifter->shift('2015-02-01')); |
|
| 49 | } |
|
| 50 | } |
|
| 51 | ||