MCPcopy
hub / github.com/chartbrew/chartbrew / createTestApp

Function createTestApp

server/tests/helpers/testApp.js:18–50  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

16const require = createRequire(import.meta.url);
17
18export async function createTestApp() {
19 const app = express();
20
21 // Mimic production behavior: server/index.js sets app.settings = settings
22 // In tests, NODE_ENV is not "production", so settings-dev is used.
23 // settings-dev reads process.env at require-time (set defaults in tests/setup.js).
24 // eslint-disable-next-line global-require
25 const settings = require("../../settings-dev.js");
26 app.settings = settings;
27
28 // Basic middleware setup (mimicking your main app)
29 app.set("trust proxy", 1);
30 app.use(cookieParser());
31 app.use(urlencoded({ extended: true }));
32 app.set("query parser", "simple");
33 app.use(json());
34 app.use(methodOverride("X-HTTP-Method-Override"));
35 app.use(helmet({
36 crossOriginEmbedderPolicy: false,
37 crossOriginResourcePolicy: false,
38 }));
39 app.use(cors());
40
41 // Basic health check route
42 app.get("/", (req, res) => {
43 return res.json({ message: "Chartbrew Test API", status: "ok" });
44 });
45
46 // Load middlewares
47 app.use(parseQueryParams);
48
49 return app;
50}
51
52export async function createTestAppWithUserRoutes() {
53 const app = await createTestApp();

Calls 3

jsonFunction · 0.50
setMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected