import { describe, expect, it } from 'vitest'; import { load as activity } from '../../src/routes/activity/+page.server.js'; import { load as operations } from '../../src/routes/operations/+page.server.js'; describe.each([ ['/activity', activity], ['/operations', operations] ] as const)('retired %s page', (path, load) => { it.each([ ['', '/provisioning?view=history'], ['?source=provisioning', '/provisioning?view=history'], ['?source=autoscaling', '/provisioning?view=history&source=autoscaling'], ['?source=unknown&offset=100', '/provisioning?view=history'], ['?server=town', '/servers/town?tab=history'], ['?server=town%20%2F%201', '/servers/town%20%2F%201?tab=history'], [ '?server=town&host=host-1&source=campaign&state=failed&days=7&q=files&limit=10&offset=20', '/servers/town?tab=history&host=host-1&source=campaign&state=failed&days=7&q=files&limit=10&offset=20' ], [ '?server=town&tab=overview&excludeProvisioning=true&excludeMaintenance=true#operation-1', '/servers/town?tab=history#operation-1' ], ['?host=host%20%2F%201&offset=50', '/hosts/operations?host=host+%2F+1'], ['?server=%20&host=deleted-host', '/hosts/operations?host=deleted-host'], ['?source=host', '/hosts/operations'], ['?source=campaign&q=files&offset=50', '/campaigns?q=files'], ['?source=beta&q=release&offset=50', '/betas?view=history&q=release'], [ '?source=maintenance&type=update&state=failed&offset=25', '/maintenance?view=activity&type=update&source=maintenance&state=failed&offset=25' ], ['?source=recovery', '/maintenance?view=activity&source=recovery'], ['?returnTo=%2Fhosts', '/provisioning?view=history&returnTo=%2Fhosts'] ])('redirects %s directly to %s', (query, location) => { expect(() => load({ url: new URL(`https://ec.test${path}${query}`) })).toThrow( expect.objectContaining({ status: 308, location }) ); }); });