aboutsummaryrefslogtreecommitdiffstats
path: root/tests/runner/createTestServer.js
diff options
context:
space:
mode:
Diffstat (limited to 'tests/runner/createTestServer.js')
-rw-r--r--tests/runner/createTestServer.js66
1 files changed, 0 insertions, 66 deletions
diff --git a/tests/runner/createTestServer.js b/tests/runner/createTestServer.js
deleted file mode 100644
index 875e6d3b1..000000000
--- a/tests/runner/createTestServer.js
+++ /dev/null
@@ -1,66 +0,0 @@
-import { readFile } from "node:fs/promises";
-import bodyParser from "body-parser";
-import express from "express";
-import bodyParserErrorHandler from "express-body-parser-error-handler";
-
-export async function createTestServer( report ) {
- const app = express();
-
- // Redirect home to test page
- app.get( "/", ( _req, res ) => {
- res.redirect( "/tests/" );
- } );
-
- // Redirect to trailing slash
- app.use( ( req, res, next ) => {
- if ( req.path === "/tests" ) {
- const query = req.url.slice( req.path.length );
- res.redirect( 301, `${ req.path }/${ query }` );
- } else {
- next();
- }
- } );
-
- // Add a script tag to HTML pages to load the QUnit listeners
- app.use( /\/tests\/unit\/([a-zA-Z0-9_-]+)\/\1\.html$/, async( req, res ) => {
- const html = await readFile(
- `tests/unit/${ req.params[ 0 ] }/${ req.params[ 0 ] }.html`,
- "utf8"
- );
- res.send(
- html.replace(
- "</head>",
- "<script src=\"/tests/runner/listeners.js\"></script></head>"
- )
- );
- } );
-
- // Bind the reporter
- app.post(
- "/api/report",
- bodyParser.json( { limit: "50mb" } ),
- async( req, res ) => {
- if ( report ) {
- const response = await report( req.body );
- if ( response ) {
- res.json( response );
- return;
- }
- }
- res.sendStatus( 204 );
- }
- );
-
- // Handle errors from the body parser
- app.use( bodyParserErrorHandler() );
-
- // Serve static files
- app.use( "/dist", express.static( "dist" ) );
- app.use( "/src", express.static( "src" ) );
- app.use( "/tests", express.static( "tests" ) );
- app.use( "/ui", express.static( "ui" ) );
- app.use( "/themes", express.static( "themes" ) );
- app.use( "/external", express.static( "external" ) );
-
- return app;
-}