Problem/Motivation

PHPUnit 12.5.0 started throwing notices when mocks do not configure expectations, e.g.

* No expectations were configured for the mock object for \Drupal\comment\CommentManagerInterface. You should refactor your test code and use a test stub instead.

Also, the $this->any() expectation is deprecated - a change that will be released in version 12.5.5. This is because the any() expectation is equivalent to having no expectation. Instances of expects($this->any()) should be removed, either by deletion or conversion to a more specific number of expectations.

Steps to reproduce

  1. Require PHPUnit 12 with Composer.
  2. Fix compatibility issues with PHPUnit 12 by applying this patch.
  3. Run the Unit tests for a module with --display-phpunit-notices.
  4. Observe the PHPUnit notices that occur.

Proposed resolution

Fix notices in the views and views_ui modules.

Remaining tasks

Information on how to review these issues and the types of changes you're likely to find in them is included in the parent issue's comments.

User interface changes

Introduced terminology

API changes

Data model changes

Release notes snippet

Issue fork drupal-3569424

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

dcam created an issue. See original summary.

dcam’s picture

Status: Active » Needs review
dcam’s picture

Title: Convert expectation-less test mocks to stubs - View modules » Convert expectation-less test mocks to stubs - Views modules
dcam’s picture

Issue summary: View changes
dcam’s picture

Status: Needs review » Needs work

Needs work due to PHPUnit 12.5.11 and a new deprecation.

dcam’s picture

Status: Needs work » Needs review

I finally got this one to a point where I'm happy with it.

There are 14 failures in FieldPluginBaseTest when the tests are run on PHPUnit 12. This happens with or without the MR. I haven't been able to figure out the reason for these failures. It says the closure objects in the render arrays don't match. I'd like to defer fixing this to the PHPUnit 12 update issue.

smustgrave’s picture

Status: Needs review » Reviewed & tested by the community

This one was a beast.

Reviewed all your threads and have no objections to your comments.

Running locally OK (371 tests, 1730 assertions)

All instances of any() appear to be gone in Views.

Not really sure what to test on this one, feel weird since it's a large MR but I have no issues.

  • catch committed 38d05d8f on main
    task: #3569424 Convert expectation-less test mocks to stubs - Views...
catch’s picture

Status: Reviewed & tested by the community » Fixed

Some of the other MRs lulled me into a false sense of a security, quite a lot in this one.

All looks fine - thanks again for the self-review comments.

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.