]> git.openstreetmap.org Git - nominatim-ui.git/blob - test/api-errors.spec.js
Rebundle latest version
[nominatim-ui.git] / test / api-errors.spec.js
1 import { test, expect } from './shared.js';
2
3 test.describe('Nominatim API errors', () => {
4
5   test.describe('HTTP 503 - service unavailable', () => {
6     let page;
7
8     test.beforeAll(async ({ browser }) => {
9       page = await browser.newPage();
10       await page.goto('/search.html?q=london&mock_api_error=fetch');
11     });
12
13     test.afterAll(async () => {
14       await page.close();
15     });
16
17     test('should display an error', async () => {
18       await page.locator('#error').waitFor();
19       await expect(page.locator('#error')).toContainText(
20         'Error fetching data from'
21       );
22     });
23   });
24
25   test.describe('HTTP 200 - JSON parsing fails', () => {
26     let page;
27
28     test.beforeAll(async ({ browser }) => {
29       page = await browser.newPage();
30       await page.goto('/search.html?q=london&mock_api_error=parse');
31     });
32
33     test.afterAll(async () => {
34       await page.close();
35     });
36
37     test('should display an error', async () => {
38       await page.waitForFunction(
39         () => document.querySelector('#error')
40               ?.textContent.includes('Error parsing JSON data from'),
41         { timeout: 10000 }
42       );
43     });
44   });
45 });