Skip to content

test(plugins): run Firecrawl through the shared web adapter matrix - #327

Merged
gustmrg merged 1 commit into
mainfrom
test/plugin-tests-firecrawl-matrix
Oct 31, 2026
Merged

gustmrg merged 1 commit into
mainfrom
test/plugin-tests-firecrawl-matrix

Conversation

@gustmrg

@gustmrg gustmrg commented Oct 31, 2026

Copy link
Copy Markdown
Owner

Firecrawl's argument tests copied the tables shared by the other web adapters, with fewer cases, because Firecrawl was not in that matrix. Adding it removes the copies and gives Firecrawl the coverage it lacked. Users see no change.

  • tests/plugin-adapters.test.ts: added firecrawl to the "%s web adapter boundaries" matrix, which adds long URLs, a stray endpoint argument, sanitized HTTP 401 and 429 failures, and cancellation.
  • tests/plugin-adapters.test.ts: moved the response format test to a "%s web adapter responses" matrix without Firecrawl, whose responses have another shape and their own test. The scrapeOptions case stays as its own test.
  • tests/plugin-service.test.ts: removed the end of the revision test, which repeated two checks made elsewhere: a replaced key blocks a web tool, and a tool kept from a replaced session is refused. Its title is now "refreshes provider revisions and stops routing web calls to a revoked provider".

Testing

  • npm run lint: clean (two pre-existing warnings in src/components/storage-*.tsx, untouched).
  • npm run format:check, npm run typecheck (all four tsconfigs), and npm run build: clean.
  • npm test on Node 22: 2445 passed, 6 more than main.
  • Removing the session check in assertAccess still fails a kept test.
  • Merges cleanly with test(plugins): drop duplicated service tests and cover the oldest settings #325, which edits the next tests in the same file.
  • Built app: not checked; the change touches no production code.

Not in this PR

Splitting tests that mix independent behaviors, such as "remembers an always-allowed MCP tool through its integration and never over a Block rule", is left for later.

Firecrawl's argument tests copied the tables the other web adapters
share, with fewer cases, because Firecrawl was not in that matrix.
Adding it removes the copies and also covers what it was missing: long
URLs, a stray endpoint argument, sanitized HTTP failures, and
cancellation. Only the scrape options case and the response format test
stay separate, since those are specific to the adapter.

The end of the plugin service's revision test repeated two checks that
other tests already make: a replaced key blocks a web tool, and a tool
kept from a replaced session is refused. Both go through the same
access check, so those lines are removed and the title now says what
the test still protects.
@gustmrg
gustmrg merged commit 53d5fb9 into main Oct 31, 2026
1 check passed
@gustmrg
gustmrg deleted the test/plugin-tests-firecrawl-matrix branch October 31, 2026 19:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant