Monitor websites uptime using Cloudflare Workers
Something went wrong. Try again.
1.5 kB · 50 lines
TypeScript
at main
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051import { describe, expect, it } from 'vitest';
import { deriveAggregateStatus } from './status.js';
describe('aggregate monitor status', () => { it('reports incomplete regional evidence as unknown', () => { expect( deriveAggregateStatus( ['us-east', 'eu-west'], [{ regionId: 'us-east', success: true, status: 'success' }], ), ).toBe('unknown'); expect( deriveAggregateStatus( ['us-east', 'eu-west'], [{ regionId: 'us-east', success: false, status: 'http_failure' }], ), ).toBe('unknown'); });
it('derives status after every configured region has reported', () => { expect( deriveAggregateStatus( ['us-east', 'eu-west'], [ { regionId: 'us-east', success: true, status: 'success' }, { regionId: 'eu-west', success: true, status: 'success' }, ], ), ).toBe('up'); expect( deriveAggregateStatus( ['us-east', 'eu-west'], [ { regionId: 'us-east', success: true, status: 'success' }, { regionId: 'eu-west', success: false, status: 'network_failure' }, ], ), ).toBe('degraded'); expect( deriveAggregateStatus( ['us-east', 'eu-west'], [ { regionId: 'us-east', success: false, status: 'http_failure' }, { regionId: 'eu-west', success: false, status: 'network_failure' }, ], ), ).toBe('down'); });});