feat: v0.12.0 — contracts → packages: load/fly/abandon gameplay (ATR 72-600 capacity 6, manual flight to any airport, time-scaled abandon penalty 15–60%), one-time DB migration preserving wallet/clock; new endpoints /api/packages/:id/load|abandon + /api/planes/:planeId/fly
This commit is contained in:
+6
-1
@@ -14,7 +14,7 @@ interface StateBody {
|
||||
account: { cash: number; reputation: number };
|
||||
simState: SimState;
|
||||
planes: Array<Record<string, unknown>>;
|
||||
contracts: Array<Record<string, unknown>>;
|
||||
packages: Array<Record<string, unknown>>;
|
||||
}
|
||||
|
||||
async function getState(page: Page): Promise<StateBody> {
|
||||
@@ -50,6 +50,11 @@ test('left pane renders wallet, reputation and the starter fleet at Frankfurt',
|
||||
await expect(row).toContainText('ATR 72-600');
|
||||
await expect(row).toContainText('Frankfurt');
|
||||
|
||||
// v0.12.0 loadout: "n/capacity pkgs" (capacity from the snapshot catalog — ATR 72-600 = 6).
|
||||
const loadout = page.getByTestId('plane-loadout-plane-starter');
|
||||
await expect(loadout).toBeVisible();
|
||||
expect((await loadout.textContent()) ?? '').toMatch(/^\d+\/6 pkgs$/);
|
||||
|
||||
// Sim clock renders (UTC wall-clock of the game time).
|
||||
await expect(page.getByTestId('sim-clock')).toContainText(/UTC/);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user