]> git.openstreetmap.org Git - nominatim-ui.git/blobdiff - test/_bootstrap.js
Merge remote-tracking branch 'upstream/master'
[nominatim-ui.git] / test / _bootstrap.js
index b538f5c2c89eb9142e8d13ea8ba49696f2ef435c..e608d2b451e3b4d5a2d471de235b5e012c1cb21e 100644 (file)
@@ -1,13 +1,13 @@
-const static_server = require('static-server');
-const http = require('http');
-const httpProxy = require('http-proxy');
-const puppeteer = require('puppeteer');
-const fse = require('fs-extra');
+import static_server from 'static-server';
+import http from 'node:http';
+import httpProxy from 'http-proxy';
+import puppeteer from 'puppeteer';
+import fse from 'fs-extra';
 
 const testing_port = 9999; // this is the port all tests expect nominatim-ui to listen to
 
 // The installation on https://nominatim.openstreetmap.org/ui/ is a bit more complex as
 
 const testing_port = 9999; // this is the port all tests expect nominatim-ui to listen to
 
 // The installation on https://nominatim.openstreetmap.org/ui/ is a bit more complex as
-// for backward compatiblity they run the API and the UI on the same port. Nominatim-UI
+// for backward compatibility they run the API and the UI on the same port. Nominatim-UI
 // is installed in the /ui subdirectory plus their webserver has custom redirect rules.
 //
 // We can simulate that with a proxy.
 // is installed in the /ui subdirectory plus their webserver has custom redirect rules.
 //
 // We can simulate that with a proxy.
@@ -17,7 +17,7 @@ const reverse_only = !!process.env.REVERSE_ONLY;
 
 // Methods to run at the start and end of the mocha testsuite run
 // https://mochajs.org/#global-setup-fixtures
 
 // Methods to run at the start and end of the mocha testsuite run
 // https://mochajs.org/#global-setup-fixtures
-exports.mochaGlobalSetup = async function () {
+export async function mochaGlobalSetup() {
   const workdir = 'dist_for_testing';
 
   // 1. Prepare build directory
   const workdir = 'dist_for_testing';
 
   // 1. Prepare build directory
@@ -49,7 +49,7 @@ Nominatim_Config.Reverse_Only = ${reverse_only};
       let api_url_match = req.url.match(/\/(\w+\.php)/);
 
       let target = api_url_match
       let api_url_match = req.url.match(/\/(\w+\.php)/);
 
       let target = api_url_match
-        ? 'http://nominatim.openstreetmap.org/' + api_url_match[1]
+        ? 'https://nominatim.openstreetmap.org'
         : 'http://localhost:' + static_port;
 
       // console.log(`http proxy ${req.url} => ${target + req.url}`)
         : 'http://localhost:' + static_port;
 
       // console.log(`http proxy ${req.url} => ${target + req.url}`)
@@ -62,16 +62,17 @@ Nominatim_Config.Reverse_Only = ${reverse_only};
   // 3. Create browser instance
   global.browser = await puppeteer.launch({
     defaultViewport: { width: 1024, height: 768 },
   // 3. Create browser instance
   global.browser = await puppeteer.launch({
     defaultViewport: { width: 1024, height: 768 },
-    timeout: 10000,
+    timeout: 20000,
     // latency: 1000,
     // latency: 1000,
+    headless: 'new',
     args: [
       '--user-agent=Nominatim UI test suite Mozilla/5.0 Gecko/20100101 HeadlessChrome/90.0'
     ]
   });
     args: [
       '--user-agent=Nominatim UI test suite Mozilla/5.0 Gecko/20100101 HeadlessChrome/90.0'
     ]
   });
-};
+}
 
 
 
 
-exports.mochaGlobalTeardown = async function () {
+export async function mochaGlobalTeardown() {
   global.browser.close();
 
   await this.static_http_server.stop();
   global.browser.close();
 
   await this.static_http_server.stop();
@@ -83,4 +84,4 @@ exports.mochaGlobalTeardown = async function () {
 
     this.proxy_server.close(() => console.log('proxy server stopped'));
   }
 
     this.proxy_server.close(() => console.log('proxy server stopped'));
   }
-};
+}