---
- test: "fly apps destroy"
description: "match fly apps destroy"
expect_ids: ["flyio:apps_destroy"]
- test: "fly apps destroy my-app"
description: "match fly apps destroy with app name"
expect_ids: ["flyio:apps_destroy"]
- test: "fly apps destroy --yes"
description: "match fly apps destroy with --yes"
expect_ids: ["flyio:apps_destroy"]
- test: "flyctl apps destroy my-app"
description: "match flyctl (full binary name) apps destroy"
expect_ids: ["flyio:apps_destroy"]
- test: "fly apps destroy"
description: "match fly apps destroy with extra spaces"
expect_ids: ["flyio:apps_destroy"]
- test: "fly apps list"
description: "negative: apps list should not match"
expect_ids: []
- test: "fly apps create my-app"
description: "negative: apps create should not match"
expect_ids: []
- test: "flyy apps destroy my-app"
description: "negative: flyy (typo) should not match — fly(?:ctl)? won't match flyy"
expect_ids: []
- test: "flyctl apps destroy my-app --yes"
description: "match flyctl apps destroy with app name and --yes"
expect_ids: ["flyio:apps_destroy"]
- test: "sudo fly apps destroy my-app"
description: "match fly apps destroy with sudo prefix"
expect_ids: ["flyio:apps_destroy"]
- test: "fly apps destroyy"
description: "negative: destroyy typo should not match"
expect_ids: []
- test: "flyctl apps destroy"
description: "match flyctl apps destroy at end of string"
expect_ids: ["flyio:apps_destroy"]
- test: "flyctle apps destroy my-app"
description: "negative: flyctle (extra char) should not match"
expect_ids: []
- test: "fly secrets unset MY_SECRET"
description: "match fly secrets unset"
expect_ids: ["flyio:secrets_unset"]
- test: "fly secrets unset SECRET1 SECRET2"
description: "match fly secrets unset with multiple secrets"
expect_ids: ["flyio:secrets_unset"]
- test: "flyctl secrets unset MY_SECRET"
description: "match flyctl secrets unset"
expect_ids: ["flyio:secrets_unset"]
- test: "fly secrets unset MY_SECRET --app my-app"
description: "match fly secrets unset with --app flag"
expect_ids: ["flyio:secrets_unset"]
- test: "fly secrets unset MY_SECRET"
description: "match fly secrets unset with extra spaces"
expect_ids: ["flyio:secrets_unset"]
- test: "fly secrets list"
description: "negative: secrets list should not match"
expect_ids: []
- test: "fly secrets set MY_SECRET=value"
description: "negative: secrets set should not match"
expect_ids: []
- test: "fly secrets unset"
description: "negative: fly secrets unset with no trailing content should not match (regex requires trailing \\s+)"
expect_ids: []
- test: "flyctl secrets unset SECRET1 SECRET2"
description: "match flyctl secrets unset with extra spaces and multiple secrets"
expect_ids: ["flyio:secrets_unset"]
- test: "sudo fly secrets unset MY_SECRET"
description: "match fly secrets unset with sudo prefix"
expect_ids: ["flyio:secrets_unset"]
- test: "flyy secrets unset MY_SECRET"
description: "negative: flyy (typo) should not match secrets_unset"
expect_ids: []
- test: "fly volumes destroy"
description: "match fly volumes destroy"
expect_ids: ["flyio:volumes_destroy"]
- test: "fly volumes destroy vol_abc123"
description: "match fly volumes destroy with volume ID"
expect_ids: ["flyio:volumes_destroy"]
- test: "fly volume destroy vol_abc123"
description: "match fly volume (singular) destroy"
expect_ids: ["flyio:volumes_destroy"]
- test: "flyctl volumes destroy vol_abc123"
description: "match flyctl volumes destroy"
expect_ids: ["flyio:volumes_destroy"]
- test: "fly volumes destroy"
description: "match fly volumes destroy with extra spaces"
expect_ids: ["flyio:volumes_destroy"]
- test: "fly volumes list"
description: "negative: volumes list should not match"
expect_ids: []
- test: "fly volumes create"
description: "negative: volumes create should not match"
expect_ids: []
- test: "fly volumes destroyy"
description: "negative: destroyy typo should not match volumes_destroy"
expect_ids: []
- test: "flyctl volume destroy vol_abc123"
description: "match flyctl volume (singular) destroy"
expect_ids: ["flyio:volumes_destroy"]
- test: "fly volumess destroy"
description: "negative: volumess (typo) should not match"
expect_ids: []
- test: "sudo fly volume destroy vol_123"
description: "match fly volume destroy with sudo prefix"
expect_ids: ["flyio:volumes_destroy"]
- test: "fly postgres destroy"
description: "match fly postgres destroy"
expect_ids: ["flyio:postgres_destroy"]
- test: "fly postgres destroy my-pg-cluster"
description: "match fly postgres destroy with cluster name"
expect_ids: ["flyio:postgres_destroy"]
- test: "flyctl postgres destroy my-pg-cluster"
description: "match flyctl postgres destroy"
expect_ids: ["flyio:postgres_destroy"]
- test: "fly postgres destroy"
description: "match fly postgres destroy with extra spaces"
expect_ids: ["flyio:postgres_destroy"]
- test: "fly postgres list"
description: "negative: postgres list should not match"
expect_ids: []
- test: "fly postgres create"
description: "negative: postgres create should not match"
expect_ids: []
- test: "fly postgres destroyy"
description: "negative: destroyy typo should not match postgres_destroy"
expect_ids: []
- test: "sudo flyctl postgres destroy my-db"
description: "match flyctl postgres destroy with sudo prefix"
expect_ids: ["flyio:postgres_destroy"]
- test: "flyy postgres destroy my-db"
description: "negative: flyy (typo) should not match postgres_destroy"
expect_ids: []
- test: "flyctl postgres destroy"
description: "match flyctl postgres destroy at end of string"
expect_ids: ["flyio:postgres_destroy"]