GoogleCloudPlatform / GoogleCloudPlatform/functions-framework-nodejs

Feature request: allow overriding `ignoredRoutes` in `getTestServer()`

Open Beginner friendly
#778 0 comments 0 reactions 0 assignees View on GitHub
feature request P2
Dominant language
TypeScript
Stars
1.4k
Forks
181
PR merge metrics
No merged PRs in 30d

Description

`getTestServer()` hard-codes `ignoredRoutes: null`, which re-enables the default `/favicon.ico` and `/robots.txt` 404 short-circuit for HTTP functions. There's no way for a test to reproduce a production deployment that disables it via `--ignored-routes ""`, so functions that legitimately serve those paths can't be tested through `getTestServer()`.

Proposal: accept an optional options bag that overrides the `getServer` options (starting with `ignoredRoutes`), defaulting to today's behavior:

```ts
const server = getTestServer('myFn', {ignoredRoutes: ''});
```

Backward compatible since the parameter is optional. `ignoredRoutes` is the immediate need; a general options bag would also cover `timeoutMilliseconds` etc.

Version: `@google-cloud/functions-framework` 5.0.5.

Contributor guide

Open the contributing guide

Research direction

Locate the getTestServer() entry point and inspect how it calls getServer(), focusing on the hard-coded ignoredRoutes option. Add the optional options bag described in the issue, preserve today’s default behavior, and verify that ignoredRoutes can be overridden while existing calls remain compatible.

Written by the indexing model from the issue text.

Assessment

Tech stack
nodejs, typescript
Domain
backend, testing
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.