Tests: Document CUSTOM_USER_TABLE SQLite incompatibility as expected behavior#328
Conversation
…n findings Agent-Logs-Url: https://github.com/wp-cli/core-command/sessions/f7b24dec-377d-4cf8-ad2e-bb30627225ba Co-authored-by: swissspidy <841956+swissspidy@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Documents why the CUSTOM_USER_TABLE install scenarios are intentionally MySQL-only, clarifying that SQLite’s per-install database file behavior prevents cross-install table sharing in these tests.
Changes:
- Replaced “TODO: Requires investigation” notes with an explicit explanation of the SQLite incompatibility for
CUSTOM_USER_TABLEscenarios. - Kept the
@require-mysqltags, now justified as permanent/expected behavior.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| # Not compatible with SQLite: each WordPress install uses its own separate SQLite database | ||
| # file, so cross-install table sharing via CUSTOM_USER_TABLE is not possible with SQLite. |
There was a problem hiding this comment.
The new explanation is helpful, but removing the reference to #244 loses traceability for why these scenarios are permanently @require-mysql. Consider keeping the link (e.g., as an additional comment line) so future maintainers can find the original discussion. Please mirror the update in the duplicated comment block before the second CUSTOM_USER_TABLE scenario as well.
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
CUSTOM_USER_TABLEtests were failing on SQLite, requiring investigation into whether it was a bug or expected behavior.Findings
This is expected behavior: SQLite gives each WordPress install its own separate database file (
wp-content/database/.ht.sqlite). Sharing user tables between two installs viaCUSTOM_USER_TABLErequires both installs to share the same physical database — impossible with SQLite's file-per-database architecture.Changes
features/core-install.feature: Replaces theTODO: Requires investigationcomments on bothCUSTOM_USER_TABLEscenarios with an explanatory comment documenting why@require-mysqlis correct and permanent for these tests.