#10643·parse-server

RestWrite.js auth and validation branches survive boolean negation under mutation testing

Author: foharaCreated Aug 25, 2026Updated Sep 1, 2026

New Feature / Enhancement Checklist

Current Limitation

While mutation-testing this repo (I'm building a tool in this space), I ran the jasmine suite (with a live mongod, 9.10.0-alpha.2 tree) against a 200-mutant sample. The suite killed 191 of 200, which is one of the strongest results I've measured, and every kill came from a real test failure.

All 9 survivors cluster in src/RestWrite.js, and all are boolean negations, meaning the guard can be inverted and the full suite still passes:

  • :549, :1910, :1914, :1918 — the auth-provider handling branches. These four also survived an independent earlier sample, so they're stable gaps rather than sampling noise.
  • :665, :699, :706, :868, :1457 — validation and session-handling guards in the same file.

Each survivor was re-run against the entire suite to confirm it's a genuine gap rather than a targeting artifact.

Feature / Enhancement Description

RestWrite is a hot path, so a small set of tests exercising those branch outcomes (particularly the auth-provider chain around :1910-:1918) would close most of the file's mutation surface. Happy to share the exact mutants or turn any of these into a test PR if that's welcome. No action needed otherwise: 95.5% with survivors this localized is an excellent showing!

Example Use Case

  1. Invert one of the listed guards (for example the :1910 auth-provider branch).
  2. Run the full jasmine suite.
  3. The suite passes, so a regression on that branch outcome would ship undetected.

Alternatives / Workarounds

None needed; this is a test-strength observation, not a product defect.

3rd Party References

n/a

Source: parse-community/parse-server