Mercurial > hg > isophonics-drupal-site
diff vendor/phpunit/phpunit-mock-objects/tests/Matcher/ConsecutiveParametersTest.php @ 14:1fec387a4317
Update Drupal core to 8.5.2 via Composer
author | Chris Cannam |
---|---|
date | Mon, 23 Apr 2018 09:46:53 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/phpunit/phpunit-mock-objects/tests/Matcher/ConsecutiveParametersTest.php Mon Apr 23 09:46:53 2018 +0100 @@ -0,0 +1,68 @@ +<?php +/* + * This file is part of the phpunit-mock-objects package. + * + * (c) Sebastian Bergmann <sebastian@phpunit.de> + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +use PHPUnit\Framework\TestCase; +use PHPUnit\Framework\ExpectationFailedException; + +class ConsecutiveParametersTest extends TestCase +{ + public function testIntegration() + { + $mock = $this->getMockBuilder(stdClass::class) + ->setMethods(['foo']) + ->getMock(); + + $mock->expects($this->any()) + ->method('foo') + ->withConsecutive( + ['bar'], + [21, 42] + ); + + $this->assertNull($mock->foo('bar')); + $this->assertNull($mock->foo(21, 42)); + } + + public function testIntegrationWithLessAssertionsThanMethodCalls() + { + $mock = $this->getMockBuilder(stdClass::class) + ->setMethods(['foo']) + ->getMock(); + + $mock->expects($this->any()) + ->method('foo') + ->withConsecutive( + ['bar'] + ); + + $this->assertNull($mock->foo('bar')); + $this->assertNull($mock->foo(21, 42)); + } + + public function testIntegrationExpectingException() + { + $mock = $this->getMockBuilder(stdClass::class) + ->setMethods(['foo']) + ->getMock(); + + $mock->expects($this->any()) + ->method('foo') + ->withConsecutive( + ['bar'], + [21, 42] + ); + + $mock->foo('bar'); + + $this->expectException(ExpectationFailedException::class); + + $mock->foo('invalid'); + } +}