| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| import { test, expect } from '@playwright/test'; |
|
|
| const POINTS = [ |
| { name: '80 Pioneer St (Red Hook)', lat: 40.6776, lon: -74.0096 }, |
| { name: 'Hollis (Queens)', lat: 40.7152, lon: -73.7569 }, |
| { name: 'Far Rockaway', lat: 40.6013, lon: -73.7568 } |
| ]; |
|
|
| test.describe('@layers backend data coverage', () => { |
| for (const p of POINTS) { |
| test(`feature counts at ${p.name}`, async ({ request }) => { |
| const fetchFc = async (path: string) => { |
| const r = await request.get(path); |
| if (!r.ok()) return { features: -1 as number, status: r.status() }; |
| const j = await r.json(); |
| return { features: (j?.features?.length ?? 0) as number, status: r.status() }; |
| }; |
|
|
| const [sandy, dep, prithvi, floodnet] = await Promise.all([ |
| fetchFc(`/api/layers/sandy?lat=${p.lat}&lon=${p.lon}&r=1500`), |
| fetchFc(`/api/layers/dep_extreme_2080?lat=${p.lat}&lon=${p.lon}&r=1500`), |
| fetchFc(`/api/layers/prithvi_water?lat=${p.lat}&lon=${p.lon}&r=1500`), |
| fetchFc(`/api/floodnet_near?lat=${p.lat}&lon=${p.lon}&r=1500`) |
| ]); |
|
|
| |
| console.log(`[${p.name}] sandy=${sandy.features} dep=${dep.features} prithvi=${prithvi.features} floodnet=${floodnet.features}`); |
|
|
| |
| |
| |
| for (const fc of [sandy, dep, prithvi, floodnet]) { |
| expect([200, -1]).toContain(fc.status); |
| } |
| }); |
| } |
| }); |
|
|