Skip to content

Media: Add tests for get_media_embedded_in_content() - #13222

Open
itzmekhokan wants to merge 1 commit into
WordPress:trunkfrom
itzmekhokan:fix/65931-media-embedded-tests
Open

Media: Add tests for get_media_embedded_in_content()#13222
itzmekhokan wants to merge 1 commit into
WordPress:trunkfrom
itzmekhokan:fix/65931-media-embedded-tests

Conversation

@itzmekhokan

@itzmekhokan itzmekhokan commented Aug 21, 2026

Copy link
Copy Markdown

get_media_embedded_in_content() has two tests in tests/phpunit/tests/media.php, both covering the same happy path: well-formed markup, one element per type.

This adds tests/phpunit/tests/media/getMediaEmbeddedInContent.php for the paths they leave out — the default $types argument, an empty array of types, the media_embedded_in_content_allowed_types filter narrowing and extending the list, repeated elements of one type, both self-closing forms, and markup the pattern is not meant to match. Fixtures sit inside surrounding content, matching the shape used in getTagRegex.php.

The repeated-element case pins the lazy body match that get_tag_regex() only just gained in [63331].

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

Use of AI Tools

AI assistance: Yes
Tool(s): Claude Code
Model(s): Claude Opus 5
Used for: characterizing the function's current behaviour and writing the test cases. All changes were reviewed and validated by me.

@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 khokansardar.

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.

Cover the paths the existing tests in tests/phpunit/tests/media.php
leave out: the default `$types` argument, an empty array of types, the
`media_embedded_in_content_allowed_types` filter in both directions,
repeated elements of a single type, and markup the regular expression
is not meant to match.

Fixes #65931.
@itzmekhokan
itzmekhokan force-pushed the fix/65931-media-embedded-tests branch from 3bb5145 to 4e8d976 Compare August 21, 2026 13:45
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