Mercurial > hg > isophonics-drupal-site
comparison vendor/phpunit/phpunit-mock-objects/tests/MockBuilderTest.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 | 4c8ae668cc8c |
children |
comparison
equal
deleted
inserted
replaced
13:5fb285c0d0e3 | 14:1fec387a4317 |
---|---|
1 <?php | 1 <?php |
2 /* | 2 /* |
3 * This file is part of the PHPUnit_MockObject package. | 3 * This file is part of the phpunit-mock-objects package. |
4 * | 4 * |
5 * (c) Sebastian Bergmann <sebastian@phpunit.de> | 5 * (c) Sebastian Bergmann <sebastian@phpunit.de> |
6 * | 6 * |
7 * For the full copyright and license information, please view the LICENSE | 7 * For the full copyright and license information, please view the LICENSE |
8 * file that was distributed with this source code. | 8 * file that was distributed with this source code. |
9 */ | 9 */ |
10 | 10 |
11 /** | 11 use PHPUnit\Framework\TestCase; |
12 * @since File available since Release 1.0.0 | 12 use PHPUnit\Framework\MockObject\MockBuilder; |
13 */ | 13 |
14 class Framework_MockBuilderTest extends PHPUnit_Framework_TestCase | 14 class MockBuilderTest extends TestCase |
15 { | 15 { |
16 public function testMockBuilderRequiresClassName() | 16 public function testMockBuilderRequiresClassName() |
17 { | 17 { |
18 $spec = $this->getMockBuilder('Mockable'); | 18 $mock = $this->getMockBuilder(Mockable::class)->getMock(); |
19 $mock = $spec->getMock(); | 19 |
20 $this->assertTrue($mock instanceof Mockable); | 20 $this->assertTrue($mock instanceof Mockable); |
21 } | 21 } |
22 | 22 |
23 public function testByDefaultMocksAllMethods() | 23 public function testByDefaultMocksAllMethods() |
24 { | 24 { |
25 $spec = $this->getMockBuilder('Mockable'); | 25 $mock = $this->getMockBuilder(Mockable::class)->getMock(); |
26 $mock = $spec->getMock(); | 26 |
27 $this->assertNull($mock->mockableMethod()); | 27 $this->assertNull($mock->mockableMethod()); |
28 $this->assertNull($mock->anotherMockableMethod()); | 28 $this->assertNull($mock->anotherMockableMethod()); |
29 } | 29 } |
30 | 30 |
31 public function testMethodsToMockCanBeSpecified() | 31 public function testMethodsToMockCanBeSpecified() |
32 { | 32 { |
33 $spec = $this->getMockBuilder('Mockable'); | 33 $mock = $this->getMockBuilder(Mockable::class) |
34 $spec->setMethods(array('mockableMethod')); | 34 ->setMethods(['mockableMethod']) |
35 $mock = $spec->getMock(); | 35 ->getMock(); |
36 | |
36 $this->assertNull($mock->mockableMethod()); | 37 $this->assertNull($mock->mockableMethod()); |
37 $this->assertTrue($mock->anotherMockableMethod()); | 38 $this->assertTrue($mock->anotherMockableMethod()); |
38 } | 39 } |
39 | 40 |
41 public function testMethodExceptionsToMockCanBeSpecified() | |
42 { | |
43 $mock = $this->getMockBuilder(Mockable::class) | |
44 ->setMethodsExcept(['mockableMethod']) | |
45 ->getMock(); | |
46 | |
47 $this->assertTrue($mock->mockableMethod()); | |
48 $this->assertNull($mock->anotherMockableMethod()); | |
49 } | |
50 | |
51 public function testEmptyMethodExceptionsToMockCanBeSpecified() | |
52 { | |
53 $mock = $this->getMockBuilder(Mockable::class) | |
54 ->setMethodsExcept() | |
55 ->getMock(); | |
56 | |
57 $this->assertNull($mock->mockableMethod()); | |
58 $this->assertNull($mock->anotherMockableMethod()); | |
59 } | |
60 | |
40 public function testByDefaultDoesNotPassArgumentsToTheConstructor() | 61 public function testByDefaultDoesNotPassArgumentsToTheConstructor() |
41 { | 62 { |
42 $spec = $this->getMockBuilder('Mockable'); | 63 $mock = $this->getMockBuilder(Mockable::class)->getMock(); |
43 $mock = $spec->getMock(); | 64 |
44 $this->assertEquals(array(null, null), $mock->constructorArgs); | 65 $this->assertEquals([null, null], $mock->constructorArgs); |
45 } | 66 } |
46 | 67 |
47 public function testMockClassNameCanBeSpecified() | 68 public function testMockClassNameCanBeSpecified() |
48 { | 69 { |
49 $spec = $this->getMockBuilder('Mockable'); | 70 $mock = $this->getMockBuilder(Mockable::class) |
50 $spec->setMockClassName('ACustomClassName'); | 71 ->setMockClassName('ACustomClassName') |
51 $mock = $spec->getMock(); | 72 ->getMock(); |
73 | |
52 $this->assertTrue($mock instanceof ACustomClassName); | 74 $this->assertTrue($mock instanceof ACustomClassName); |
53 } | 75 } |
54 | 76 |
55 public function testConstructorArgumentsCanBeSpecified() | 77 public function testConstructorArgumentsCanBeSpecified() |
56 { | 78 { |
57 $spec = $this->getMockBuilder('Mockable'); | 79 $mock = $this->getMockBuilder(Mockable::class) |
58 $spec->setConstructorArgs($expected = array(23, 42)); | 80 ->setConstructorArgs([23, 42]) |
59 $mock = $spec->getMock(); | 81 ->getMock(); |
60 $this->assertEquals($expected, $mock->constructorArgs); | 82 |
83 $this->assertEquals([23, 42], $mock->constructorArgs); | |
61 } | 84 } |
62 | 85 |
63 public function testOriginalConstructorCanBeDisabled() | 86 public function testOriginalConstructorCanBeDisabled() |
64 { | 87 { |
65 $spec = $this->getMockBuilder('Mockable'); | 88 $mock = $this->getMockBuilder(Mockable::class) |
66 $spec->disableOriginalConstructor(); | 89 ->disableOriginalConstructor() |
67 $mock = $spec->getMock(); | 90 ->getMock(); |
91 | |
68 $this->assertNull($mock->constructorArgs); | 92 $this->assertNull($mock->constructorArgs); |
69 } | 93 } |
70 | 94 |
71 public function testByDefaultOriginalCloneIsPreserved() | 95 public function testByDefaultOriginalCloneIsPreserved() |
72 { | 96 { |
73 $spec = $this->getMockBuilder('Mockable'); | 97 $mock = $this->getMockBuilder(Mockable::class) |
74 $mock = $spec->getMock(); | 98 ->getMock(); |
99 | |
75 $cloned = clone $mock; | 100 $cloned = clone $mock; |
101 | |
76 $this->assertTrue($cloned->cloned); | 102 $this->assertTrue($cloned->cloned); |
77 } | 103 } |
78 | 104 |
79 public function testOriginalCloneCanBeDisabled() | 105 public function testOriginalCloneCanBeDisabled() |
80 { | 106 { |
81 $spec = $this->getMockBuilder('Mockable'); | 107 $mock = $this->getMockBuilder(Mockable::class) |
82 $spec->disableOriginalClone(); | 108 ->disableOriginalClone() |
83 $mock = $spec->getMock(); | 109 ->getMock(); |
110 | |
84 $mock->cloned = false; | 111 $mock->cloned = false; |
85 $cloned = clone $mock; | 112 $cloned = clone $mock; |
113 | |
86 $this->assertFalse($cloned->cloned); | 114 $this->assertFalse($cloned->cloned); |
87 } | |
88 | |
89 public function testCallingAutoloadCanBeDisabled() | |
90 { | |
91 // it is not clear to me how to test this nor the difference | |
92 // between calling it or not | |
93 $this->markTestIncomplete(); | |
94 } | 115 } |
95 | 116 |
96 public function testProvidesAFluentInterface() | 117 public function testProvidesAFluentInterface() |
97 { | 118 { |
98 $spec = $this->getMockBuilder('Mockable') | 119 $spec = $this->getMockBuilder(Mockable::class) |
99 ->setMethods(array('mockableMethod')) | 120 ->setMethods(['mockableMethod']) |
100 ->setConstructorArgs(array()) | 121 ->setConstructorArgs([]) |
101 ->setMockClassName('DummyClassName') | 122 ->setMockClassName('DummyClassName') |
102 ->disableOriginalConstructor() | 123 ->disableOriginalConstructor() |
103 ->disableOriginalClone() | 124 ->disableOriginalClone() |
104 ->disableAutoload(); | 125 ->disableAutoload(); |
105 $this->assertTrue($spec instanceof PHPUnit_Framework_MockObject_MockBuilder); | 126 |
127 $this->assertTrue($spec instanceof MockBuilder); | |
106 } | 128 } |
107 } | 129 } |