Skip to main content

max / makenotwork

server: fix stale workflow test fixtures (wizard pricing_model; "Cancellation scheduled") Three pre-existing test bugs surfaced once sando's cargo_test gate got observability (Phase A) and the right feature flag (fast-tests). All three exist at launch tag f6edda7 — shipped because deploy.sh doesn't run cargo test. - workflows::wizards::project_wizard_full_flow (×1 form): monetization step now requires pricing_model after launch-eve hardening (project.rs:257-263, commit 3dc8dca closed the silent fallback-to-Free). Skip case posts pricing_model=free to mirror the rendered form's default. - workflows::wizards::project_wizard_subscription_tiers: tier-creation case posts pricing_model=subscription. - workflows::fan_plus::dashboard_account_tab_shows_resume_when_cancel_pending: template copy was tightened to sentence-start "Cancellation scheduled." in commit 231a592 (exorcise: B12c); test still asserted lowercase. Update to match the deliberate capitalization.
Author: Max Johnson <me@maxj.phd> · 2026-06-03 00:26 UTC
Commit: a32486708ba4e34c965a7e68e8a50c065f0c0053
Parent: fc105c5
2 files changed, +7 insertions, -4 deletions
@@ -536,7 +536,7 @@ async fn dashboard_account_tab_shows_resume_when_cancel_pending() {
536 536
537 537 let resp = h.client.get("/dashboard/tabs/account").await;
538 538 assert_eq!(resp.status, 200);
539 - assert!(resp.text.contains("cancellation scheduled"));
539 + assert!(resp.text.contains("Cancellation scheduled"));
540 540 assert!(resp.text.contains("Resume"));
541 541 }
542 542
@@ -50,12 +50,15 @@ async fn project_wizard_full_flow() {
50 50 "Should advance to step 3"
51 51 );
52 52
53 - // Step 3: Monetization — skip (no tiers)
53 + // Step 3: Monetization — skip (no tiers). `pricing_model` is required by
54 + // `save_monetization` (launch-eve hardening: closed silent fallback to
55 + // Free); the wizard select defaults to "free" in the rendered form, so
56 + // mirror that here.
54 57 let resp = h
55 58 .client
56 59 .post_form(
57 60 "/dashboard/new-project/wizard-test/step/monetization",
58 - "",
61 + "pricing_model=free",
59 62 )
60 63 .await;
61 64 assert!(resp.status.is_success(), "Step 3 failed: {}", resp.text);
@@ -614,7 +617,7 @@ async fn project_wizard_subscription_tiers() {
614 617 .client
615 618 .post_form(
616 619 "/dashboard/new-project/tier-test/step/monetization",
617 - "tier_name_0=Basic&tier_price_0=5.00&tier_desc_0=Basic+access&tier_name_1=Pro&tier_price_1=15.00&tier_desc_1=Full+access",
620 + "pricing_model=subscription&tier_name_0=Basic&tier_price_0=5.00&tier_desc_0=Basic+access&tier_name_1=Pro&tier_price_1=15.00&tier_desc_1=Full+access",
618 621 )
619 622 .await;
620 623 assert!(