NEO-63: fix Bruno depletion test node isolation.
Use prototype_urban_bulk_delta so earlier alpha gathers in the collection do not pre-deplete capacity under CI Postgres persistence.pull/97/head
parent
3834b2316a
commit
0f846f90b9
|
|
@ -5,18 +5,19 @@ meta {
|
|||
}
|
||||
|
||||
docs {
|
||||
NEO-63: pre-request exhausts prototype_resource_node_alpha capacity (10 successful gathers), then this interact should deny with node_depleted.
|
||||
NEO-63: uses prototype_urban_bulk_delta (not alpha) so earlier interaction requests in this collection do not pre-deplete capacity. Pre-request exhausts the node (10 successful gathers), then this interact should deny with node_depleted.
|
||||
}
|
||||
|
||||
script:pre-request {
|
||||
const axios = require("axios");
|
||||
const baseUrl = bru.getEnvVar("baseUrl") || bru.getVar("baseUrl");
|
||||
const playerId = bru.getEnvVar("playerId") || bru.getVar("playerId");
|
||||
const nodeId = "prototype_urban_bulk_delta";
|
||||
await axios.post(
|
||||
`${baseUrl}/game/players/${playerId}/move`,
|
||||
{
|
||||
schemaVersion: 1,
|
||||
target: { x: 10, y: 0.9, z: -6 },
|
||||
target: { x: 16, y: 0.9, z: 0 },
|
||||
},
|
||||
{ headers: { "Content-Type": "application/json" } },
|
||||
);
|
||||
|
|
@ -25,7 +26,7 @@ script:pre-request {
|
|||
`${baseUrl}/game/players/${playerId}/interact`,
|
||||
{
|
||||
schemaVersion: 1,
|
||||
interactableId: "prototype_resource_node_alpha",
|
||||
interactableId: nodeId,
|
||||
},
|
||||
{ headers: { "Content-Type": "application/json" } },
|
||||
);
|
||||
|
|
@ -48,7 +49,7 @@ headers {
|
|||
body:json {
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"interactableId": "prototype_resource_node_alpha"
|
||||
"interactableId": "prototype_urban_bulk_delta"
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -46,12 +46,20 @@ curl -sS "${BASE}/game/players/${ID}/skill-progression"
|
|||
|
||||
## Depletion deny
|
||||
|
||||
Repeat interact on the same node until capacity is exhausted (**10** successful gathers on a fresh node), then interact again:
|
||||
Uses **`prototype_urban_bulk_delta`** (anchor **18, 0**) so earlier Bruno interaction requests on alpha do not pre-deplete capacity in the shared CI Postgres store. Move in range (**16, 0**), exhaust with **10** successful interacts on delta, then interact again:
|
||||
|
||||
```bash
|
||||
curl -sS -i -X POST "${BASE}/game/players/${ID}/move" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"schemaVersion":1,"target":{"x":16,"y":0.9,"z":0}}'
|
||||
```
|
||||
|
||||
(Repeat interact on **`prototype_urban_bulk_delta`** ten times with **`allowed: true`**, then:)
|
||||
|
||||
```bash
|
||||
curl -sS -i -X POST "${BASE}/game/players/${ID}/interact" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"schemaVersion":1,"interactableId":"prototype_resource_node_alpha"}'
|
||||
-d '{"schemaVersion":1,"interactableId":"prototype_urban_bulk_delta"}'
|
||||
```
|
||||
|
||||
Expect **HTTP 200**, **`allowed`:** **false**, **`reasonCode`:** **`node_depleted`**. Inventory and XP totals unchanged on that denied request.
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@
|
|||
|------|---------|
|
||||
| `server/NeonSprawl.Server.Tests/Game/Interaction/InteractionResourceNodeGatherIntegrationTests.cs` | HTTP integration: inventory, XP, depletion, terminal, deny registry. |
|
||||
| `bruno/neon-sprawl-server/interaction/Post interact gather then get inventory.bru` | Happy path: interact + assert scrap in bag. |
|
||||
| `bruno/neon-sprawl-server/interaction/Post interact depleted node deny.bru` | Pre-loop 10 gathers; 11th **`node_depleted`**. |
|
||||
| `bruno/neon-sprawl-server/interaction/Post interact depleted node deny.bru` | Pre-loop 10 gathers on **`prototype_urban_bulk_delta`** (isolated from alpha requests earlier in collection); 11th **`node_depleted`**. |
|
||||
| `docs/manual-qa/NEO-63.md` | curl gather → inventory + depletion deny. |
|
||||
| `docs/plans/NEO-63-implementation-plan.md` | This plan. |
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue