@@ -38,11 +38,18 @@ protected function setUpCompat()
38
38
#[\PHPUnit \Framework \Attributes \Test]
39
39
public function testDelegateReturnsMockResult ()
40
40
{
41
- $ expected = 3 ;
42
- $ mock = $ this ->getMockBuilder ($ this ->className )
43
- ->onlyMethods ([MockDelegateFunctionBuilder::METHOD ])
44
- ->getMock ();
45
-
41
+ $ expected = 3 ;
42
+ $ mockBuilder = $ this ->getMockBuilder ($ this ->className );
43
+
44
+ // `setMethods` is gone from phpunit 10, alternative is `onlyMethods`
45
+ if (method_exists ($ mockBuilder , 'onlyMethods ' )) {
46
+ $ mockBuilder ->onlyMethods ([MockDelegateFunctionBuilder::METHOD ]);
47
+ } else {
48
+ $ mockBuilder ->setMethods ([MockDelegateFunctionBuilder::METHOD ]);
49
+ }
50
+
51
+ $ mock = $ mockBuilder ->getMock ();
52
+
46
53
$ mock ->expects ($ this ->once ())
47
54
->method (MockDelegateFunctionBuilder::METHOD )
48
55
->willReturn ($ expected );
@@ -59,9 +66,16 @@ public function testDelegateReturnsMockResult()
59
66
#[\PHPUnit \Framework \Attributes \Test]
60
67
public function testDelegateForwardsArguments ()
61
68
{
62
- $ mock = $ this ->getMockBuilder ($ this ->className )
63
- ->onlyMethods ([MockDelegateFunctionBuilder::METHOD ])
64
- ->getMock ();
69
+ $ mockBuilder = $ this ->getMockBuilder ($ this ->className );
70
+
71
+ // `setMethods` is gone from phpunit 10, alternative is `onlyMethods`
72
+ if (method_exists ($ mockBuilder , 'onlyMethods ' )) {
73
+ $ mockBuilder ->onlyMethods ([MockDelegateFunctionBuilder::METHOD ]);
74
+ } else {
75
+ $ mockBuilder ->setMethods ([MockDelegateFunctionBuilder::METHOD ]);
76
+ }
77
+
78
+ $ mock = $ mockBuilder ->getMock ();
65
79
66
80
$ mock ->expects ($ this ->once ())
67
81
->method (MockDelegateFunctionBuilder::METHOD )
0 commit comments