Skip to content

Enhance show_message function with optional echo parameter and tests#11807

Open
shreyasikhar wants to merge 3 commits into
WordPress:trunkfrom
shreyasikhar:ticket/65181
Open

Enhance show_message function with optional echo parameter and tests#11807
shreyasikhar wants to merge 3 commits into
WordPress:trunkfrom
shreyasikhar:ticket/65181

Conversation

@shreyasikhar
Copy link
Copy Markdown

This pull request updates the show_message function in src/wp-admin/includes/misc.php to add support for returning the formatted message as a string instead of always printing it.
Without this change, it is almost impossible to add tests for this show_message function because of buffer flushing functions called at the end of it's definition.

Enhancements to message display:

  • Updated the show_message function to accept a new $echo parameter (defaulting to true). When $echo is false, the function returns the formatted HTML string instead of printing it and flushing output buffers. The function signature and docblock were updated accordingly.

Testing improvements:

  • Added a new test class Tests_Admin_Includes_Misc_ShowMessage_Test in tests/phpunit/tests/admin/includes/misc/ShowMessage_Test.php to verify that show_message correctly returns the formatted HTML string for plain messages and WP_Error objects when $echo is false.

Trac ticket: https://core.trac.wordpress.org/ticket/65181

@github-actions
Copy link
Copy Markdown

The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the props-bot label.

Core Committers: Use this line as a base for the props when committing in SVN:

Props shreyasikhar26.

To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook.

@github-actions
Copy link
Copy Markdown

Test using WordPress Playground

The changes in this pull request can previewed and tested using a WordPress Playground instance.

WordPress Playground is an experimental project that creates a full WordPress instance entirely within the browser.

Some things to be aware of

  • All changes will be lost when closing a tab with a Playground instance.
  • All changes will be lost when refreshing the page.
  • A fresh instance is created each time the link below is clicked.
  • Every time this pull request is updated, a new ZIP file containing all changes is created. If changes are not reflected in the Playground instance,
    it's possible that the most recent build failed, or has not completed. Check the list of workflow runs to be sure.

For more details about these limitations and more, check out the Limitations page in the WordPress Playground documentation.

Test this pull request with WordPress Playground.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant