Auto-refuel on dispatch; remove manual refueling UI/API/action (ISS-082, v0.42.0)
CI / build + unit + e2e (pull_request) Successful in 17m25s
CI / build + unit + e2e (pull_request) Successful in 17m25s
This commit is contained in:
@@ -63,17 +63,17 @@ describe('POST /api/planes/:planeId/fly', () => {
|
||||
.where(eq(schema.planes.id, 'plane-starter'));
|
||||
});
|
||||
|
||||
it('rejects a leg the plane cannot fuel with 409 (burn > fuel)', async () => {
|
||||
it('rejects a leg that does not fit even a full tank with 409 (ISS-082 backstop)', async () => {
|
||||
const { db } = await getGameDb();
|
||||
// EDDF → LEMD ≈ 1950 km × 1.75 L/km ≈ 3400 L — far more than 1 L.
|
||||
await db.update(schema.planes).set({ fuel: 1 }).where(eq(schema.planes.id, 'plane-starter'));
|
||||
// UNNT → LPPD ≈ 7670 km needs ~10k L — beyond the ATR's 6300 L tank, so no auto-refuel can make it flyable.
|
||||
await db.update(schema.planes).set({ locationIcao: 'UNNT' }).where(eq(schema.planes.id, 'plane-starter'));
|
||||
|
||||
const res = await post('plane-starter', { destIcao: 'LEMD' });
|
||||
const res = await post('plane-starter', { destIcao: 'LPPD' });
|
||||
expect(res.status).toBe(409);
|
||||
expect(((await res.json()) as { error: string }).error).toMatch(/insufficient fuel/i);
|
||||
|
||||
// Refill for later tests.
|
||||
await db.update(schema.planes).set({ fuel: 6300 }).where(eq(schema.planes.id, 'plane-starter'));
|
||||
// Put the starter back at the hub for later tests.
|
||||
await db.update(schema.planes).set({ locationIcao: 'EDDF' }).where(eq(schema.planes.id, 'plane-starter'));
|
||||
});
|
||||
|
||||
it('flies the plane and returns the full snapshot with departure + destination set', async () => {
|
||||
|
||||
Reference in New Issue
Block a user