Files
AetherForge/server/web/src/help/pageWeather.test.ts
AetherForge a32860b0d9
Some checks failed
CI Docker Mining Proof / Linux agent hashrate proof (push) Has been cancelled
feat: alive UI wave, galaxy presence, spread and fleet enhancements
Dashboard ambient layer, comrade presence, Mission Deck and War Room, Emberwake supply chain, spread/docs publishing, fleet policy and modules API, CI docker mining, and refreshed USB pack.
2026-06-04 22:36:17 -07:00

46 lines
1.7 KiB
TypeScript

import { describe, it, expect } from 'vitest';
import { resolvePageWeather, PAGE_WEATHER, DEFAULT_PAGE_WEATHER } from './pageWeather';
describe('pageWeather', () => {
it('resolves forge and mission deck to full glow', () => {
expect(resolvePageWeather('/forge').vibe).toBe('forge-glow');
expect(resolvePageWeather('/forge').intensity).toBe(1);
expect(resolvePageWeather('/mission-deck').vibe).toBe('forge-glow');
});
it('resolves crucible to slower embers', () => {
const w = resolvePageWeather('/crucible');
expect(w.vibe).toBe('crucible-embers');
expect(w.speed).toBeLessThan(0.5);
expect(w.palette).toBe('crucible');
});
it('resolves emberwake with campaign pulse', () => {
const w = resolvePageWeather('/emberwake');
expect(w.vibe).toBe('emberwake-pulse');
expect(w.energyPulse).toBe(true);
expect(w.palette).toBe('campaign');
});
it('resolves settings to dim starfield', () => {
const w = resolvePageWeather('/settings');
expect(w.vibe).toBe('starfield-dim');
expect(w.intensity).toBeLessThan(0.3);
expect(w.palette).toBe('dim');
});
it('resolves fleet and dashboard to medium drift', () => {
expect(resolvePageWeather('/agents').vibe).toBe('medium-drift');
expect(resolvePageWeather('/dashboard').vibe).toBe('medium-drift');
});
it('strips trailing slash and query', () => {
expect(resolvePageWeather('/crucible/')).toEqual(PAGE_WEATHER['/crucible']);
expect(resolvePageWeather('/dashboard?tab=fleet')).toEqual(PAGE_WEATHER['/dashboard']);
});
it('falls back to default for unknown routes', () => {
expect(resolvePageWeather('/unknown')).toEqual(DEFAULT_PAGE_WEATHER);
});
});