Problem/Motivation
The CTools test modules include body field configuration, but the matching field storage configuration is missing.
Specifically, the test configuration is missing:
- field.storage.node.body.yml
- field.storage.block_content.body.yml
This leaves the test module configuration incomplete and causes failures when the relevant test modules are
installed during PHPUnit runs.
Steps to reproduce
- Check out the 4.1.x branch.
- Run the relevant PHPUnit test coverage that installs the CTools test modules.
- Observe failures caused by the missing body field storage configuration.
Proposed resolution
Add the missing body field storage configuration for the node and block content body fields used by the testmodules.
Remaining tasks
- Add the missing field storage config.
- Rerun the relevant PHPUnit test coverage.
- Confirm the related pipeline job passes.
User interface changes
None.
API changes
None.
Data model changes
None.
Comments
Comment #3
kieran.cottI’ve opened MR 93 to update tests, fixtures, coding-standards/static-analysis issues, and Drupal 11 compatibility expectations so the branch is aligned with the current CI tooling.
The latest commit addresses the CToolsWizardTest failure: the wizard service parameters had drifted out of sync with the constructor, causing the add wizard page to fatal before rendering, and the test config entity advertised a canonical link without a matching route. The changes restore the missing wizard parameters and add a real canonical route/controller for the test entity so both the add wizard and post-save collection page render cleanly.
Comment #4
kieran.cottComment #5
joelpittetThank you for taking the time to fix these issues, some of the fixes are incorrect but the scope of these changes are also a bit too big anyways. There might already be someone who fix them in the issue queue.
By making the scope broad you accidentally can create unintended merge conflicts in other issues that might be solving bug fixes.
Can you scope this to only the body field missing fixes? I know that one well enough to review it.
Then the scope can switch to just Phpunit
Comment #6
kieran.cottHi @joelpittet - thanks, I've reverted the changes in MR 93 except the body fields.
PHPUnit still fails on CToolsWizardTest, since commit 5a1495e01a58bee10fdf4efcb16d19544d96d1b6 is now reverted, but the scope of the MR is now reduced to the missing
field.storage.node.body.ymlandfield.storage.block_content.body.ymlconfig as suggested.Comment #7
liam morlandChanging title due to request in #5.
Comment #8
kieran.cottThanks @liam morland, in light of the new scope as indicated by the title it would probably be best if we update the issue summary/steps to reproduce to reflect.
Comment #9
kieran.cottUpdated issue description to reflect new title.
Comment #10
kieran.cottEdit: Formatting
Comment #11
himynameisseb commentedThe patch applies cleanly and the targeted ctools_block functional test passes for me.
Tested on:
Drupal core version: 11.3.11
ctools version: 4.1.0
Tests to be run:
- Drupal\Tests\ctools_block\Functional\EntityFieldBlockTest
Test run started:
Thursday, July 16, 2026 - 16:41
Test summary
------------
7.981s Drupal\Tests\ctools_block\Functional\EntityFieldBlockTest 4 passed
Please let me know if anything else is needed.
Comment #12
liam morlandThis doesn't fix all the test failures but it does fix the ones related to the body field.
Comment #13
liam morlandPerhaps this should use
config/optionalso that it works on older versions where the config already exists.