The forum mapping tests pass only when another package has run first #33

Open
opened 2026-09-21 07:18:11 +00:00 by cgalo5758 · 0 comments
Owner

What a contributor runs into

The Discourse integration's operator mapping tests pass in a full run and fail on their own. The mapping form lists entitlements from the resource keys whose provider column names Discourse, and nothing in that package sets the column: the integration's migration inserts the key with it null and leaves the stamp to boot-time provider registration. In a full run, another package registers the providers earlier and commits the stamp to the shared test database. Run alone against a database that has not seen it, the form offers no entitlement to choose and every create is refused.

Why it costs

A test that depends on another package's committed side effect hides its own precondition, and the failure it produces points at the form rather than at the missing stamp. Running one package in isolation, the usual move when narrowing a failure, is what breaks it.

Where

The Discourse integration's web package tests and the fixture they share.

Done when

The fixture stamps the provider itself, or registers the integration's manifest the way boot does, and the package passes on its own against a database that has run only its own migrations.

Migrated from status/issues.md at b7a0e15

## What a contributor runs into The Discourse integration's operator mapping tests pass in a full run and fail on their own. The mapping form lists entitlements from the resource keys whose provider column names Discourse, and nothing in that package sets the column: the integration's migration inserts the key with it null and leaves the stamp to boot-time provider registration. In a full run, another package registers the providers earlier and commits the stamp to the shared test database. Run alone against a database that has not seen it, the form offers no entitlement to choose and every create is refused. ## Why it costs A test that depends on another package's committed side effect hides its own precondition, and the failure it produces points at the form rather than at the missing stamp. Running one package in isolation, the usual move when narrowing a failure, is what breaks it. ## Where The Discourse integration's web package tests and the fixture they share. ## Done when The fixture stamps the provider itself, or registers the integration's manifest the way boot does, and the package passes on its own against a database that has run only its own migrations. Migrated from status/issues.md at b7a0e15
cgalo5758 added the
kind
debt
area/discoursearea/testing
labels 2026-09-21 07:18:11 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: wiki-cafe/member-console#33