MDL-71036 phpunit: Mock->setMethods() silently deprecated

The current ->setMethods() has been silently (won't emit any
warning) in PHPUnit 9. And will stop working (current plans)
in PHPUnit 10.

Basically the now deprecated method has been split into:

- onlyMethods(): To point to existing methods in the mocked artifact.
- addMethods(): To point to non existing (yet) methods in the mocked
  artifact.

In practice that means that all our current setMethods() calls can be
converted to onlyMethods() (existing) and done. The addMethods() is
mostly useful on development phases, not final testing.

Finally note that <null> isn't accepted anymore as parameter to
double all the methods. Instead empty array [] must be used.

Link: https://github.com/sebastianbergmann/phpunit/issues/3770
This commit is contained in:
Eloy Lafuente (stronk7) 2021-03-11 19:31:28 +01:00
parent 8a14a7bd22
commit 81407f18ec
42 changed files with 181 additions and 181 deletions

View file

@ -4233,7 +4233,7 @@ class core_accesslib_testcase extends advanced_testcase {
public function test_is_parent_of(string $contextpath, string $testpath, bool $testself, bool $expected): void {
$context = $this->getMockBuilder(\context::class)
->disableOriginalConstructor()
->setMethods([
->onlyMethods([
'get_url',
'get_capabilities',
])
@ -4245,7 +4245,7 @@ class core_accesslib_testcase extends advanced_testcase {
$comparisoncontext = $this->getMockBuilder(\context::class)
->disableOriginalConstructor()
->setMethods([
->onlyMethods([
'get_url',
'get_capabilities',
])
@ -4335,7 +4335,7 @@ class core_accesslib_testcase extends advanced_testcase {
public function test_is_child_of(string $contextpath, string $testpath, bool $testself, bool $expected): void {
$context = $this->getMockBuilder(\context::class)
->disableOriginalConstructor()
->setMethods([
->onlyMethods([
'get_url',
'get_capabilities',
])
@ -4347,7 +4347,7 @@ class core_accesslib_testcase extends advanced_testcase {
$comparisoncontext = $this->getMockBuilder(\context::class)
->disableOriginalConstructor()
->setMethods([
->onlyMethods([
'get_url',
'get_capabilities',
])

View file

@ -129,7 +129,7 @@ class core_completionlib_testcase extends advanced_testcase {
$this->mock_setup();
$mockbuilder = $this->getMockBuilder('completion_info');
$mockbuilder->setMethods(array('is_enabled', 'get_data', 'internal_get_state', 'internal_set_data',
$mockbuilder->onlyMethods(array('is_enabled', 'get_data', 'internal_get_state', 'internal_set_data',
'user_can_override_completion'));
$mockbuilder->setConstructorArgs(array((object)array('id' => 42)));
$cm = (object)array('id'=>13, 'course'=>42);
@ -453,7 +453,7 @@ class core_completionlib_testcase extends advanced_testcase {
$this->mock_setup();
$mockbuilder = $this->getMockBuilder('completion_info');
$mockbuilder->setMethods(array('is_enabled', 'get_data', 'internal_set_data', 'update_state'));
$mockbuilder->onlyMethods(array('is_enabled', 'get_data', 'internal_set_data', 'update_state'));
$mockbuilder->setConstructorArgs(array((object)array('id' => 42)));
$cm = (object)array('id'=>13, 'course'=>42);
@ -542,7 +542,7 @@ class core_completionlib_testcase extends advanced_testcase {
$this->mock_setup();
$mockbuilder = $this->getMockBuilder('completion_info');
$mockbuilder->setMethods(array('delete_all_state', 'get_tracked_users', 'update_state'));
$mockbuilder->onlyMethods(array('delete_all_state', 'get_tracked_users', 'update_state'));
$mockbuilder->setConstructorArgs(array((object)array('id' => 42)));
$c = $mockbuilder->getMock();
@ -756,7 +756,7 @@ class core_completionlib_testcase extends advanced_testcase {
$this->mock_setup();
$mockbuilder = $this->getMockBuilder('completion_info');
$mockbuilder->setMethods(array('get_tracked_users'));
$mockbuilder->onlyMethods(array('get_tracked_users'));
$mockbuilder->setConstructorArgs(array((object)array('id' => 42)));
$c = $mockbuilder->getMock();
@ -790,7 +790,7 @@ class core_completionlib_testcase extends advanced_testcase {
$this->mock_setup();
$mockbuilder = $this->getMockBuilder('completion_info');
$mockbuilder->setMethods(array('get_tracked_users'));
$mockbuilder->onlyMethods(array('get_tracked_users'));
$mockbuilder->setConstructorArgs(array((object)array('id' => 42)));
$c = $mockbuilder->getMock();
@ -844,7 +844,7 @@ class core_completionlib_testcase extends advanced_testcase {
$this->mock_setup();
$mockbuilder = $this->getMockBuilder('completion_info');
$mockbuilder->setMethods(array('is_enabled', 'update_state'));
$mockbuilder->onlyMethods(array('is_enabled', 'update_state'));
$mockbuilder->setConstructorArgs(array((object)array('id' => 42)));
$cm = (object)array('course'=>42, 'id'=>13, 'completion'=>0, 'completiongradeitemnumber'=>null);

View file

@ -224,7 +224,7 @@ class exportable_filearea_test extends advanced_testcase {
): exported_item {
$archive = $this->getMockBuilder(zipwriter::class)
->setConstructorArgs([$this->getMockBuilder(\ZipStream\ZipStream::class)->getmock()])
->setMethods([
->onlyMethods([
'add_file_from_stored_file',
'is_file_in_archive',
])

View file

@ -209,7 +209,7 @@ class exportable_stored_file_test extends advanced_testcase {
): void {
$archive = $this->getMockBuilder(zipwriter::class)
->setConstructorArgs([$this->getMockBuilder(\ZipStream\ZipStream::class)->getmock()])
->setMethods([
->onlyMethods([
'add_file_from_stored_file',
])
->getMock();

View file

@ -309,7 +309,7 @@ EOF;
): void {
$archive = $this->getMockBuilder(zipwriter::class)
->setConstructorArgs([$this->getMockBuilder(\ZipStream\ZipStream::class)->getmock()])
->setMethods([
->onlyMethods([
'is_file_in_archive',
'add_file_from_string',
'add_file_from_stored_file',
@ -357,7 +357,7 @@ EOF;
): void {
$archive = $this->getMockBuilder(zipwriter::class)
->setConstructorArgs([$this->getMockBuilder(\ZipStream\ZipStream::class)->getmock()])
->setMethods([
->onlyMethods([
'add_file_from_stored_file',
'add_file_from_string',
'add_file_from_template',

View file

@ -149,7 +149,7 @@ class course_exporter_test extends advanced_testcase {
protected function get_mocked_zipwriter(?array $methods = []): zipwriter {
return $this->getMockBuilder(zipwriter::class)
->setConstructorArgs([$this->getMockBuilder(\ZipStream\ZipStream::class)->getmock()])
->setMethods($methods)
->onlyMethods($methods)
->getMock();
}
}

View file

@ -48,7 +48,7 @@ class core_curl_security_helper_testcase extends advanced_testcase {
public function test_curl_security_helper_url_is_blocked($dns, $url, $blockedhosts, $allowedports, $expected) {
$this->resetAfterTest(true);
$helper = $this->getMockBuilder('\core\files\curl_security_helper')
->setMethods(['get_host_list_by_name'])
->onlyMethods(['get_host_list_by_name'])
->getMock();
// Override the get host list method to return hard coded values based on a mapping provided by $dns.

View file

@ -73,7 +73,7 @@ class h5p_get_content_types_task_testcase extends advanced_testcase {
// Mock implementation of \core\task\h5p_get_content_types_task::get_core to avoid external systems.
$mocktask = $this->getMockBuilder(\core\task\h5p_get_content_types_task::class)
->setMethods(['get_core'])
->onlyMethods(['get_core'])
->getMock();
$mocktask->expects($this->any())

View file

@ -104,7 +104,7 @@ class task_database_logger_testcase extends advanced_testcase {
file_put_contents($logpath, 'Example content');
$task = $this->getMockBuilder(\core\task\adhoc_task::class)
->setMethods(['get_component', 'execute'])
->onlyMethods(['get_component', 'execute'])
->getMock();
$task->method('get_component')->willReturn('core_test');
@ -165,7 +165,7 @@ class task_database_logger_testcase extends advanced_testcase {
file_put_contents($logpath, 'Example content');
$task = $this->getMockBuilder(\core\task\adhoc_task::class)
->setMethods(['get_component', 'execute'])
->onlyMethods(['get_component', 'execute'])
->getMock();
$task->method('get_component')->willReturn('core_test');
@ -197,7 +197,7 @@ class task_database_logger_testcase extends advanced_testcase {
file_put_contents($logpath, 'Example content');
$task = $this->getMockBuilder(\core\task\adhoc_task::class)
->setMethods(['get_component', 'execute', 'get_userid'])
->onlyMethods(['get_component', 'execute', 'get_userid'])
->getMock();
$task->method('get_component')->willReturn('core_test');