Problem
The Model Target Web API mock does not support the exhausted-training-allowance state returned by real Vuforia as TRAINING_ALLOWANCE_EXCEEDED. This means client error handling for an exhausted account cannot be tested against the mock, and the state is currently encountered only when the shared real Vuforia account has already consumed its allowance.
This is distinct from the existing mocked states for VWS RequestQuotaReached, VWS TargetQuotaReached, project suspension, and VuMark QuotaExceeded.
Proposed behavior
Add a configurable Model Target account state which makes standard and advanced dataset creation return a Vuforia-shaped TRAINING_ALLOWANCE_EXCEEDED error. Keep the default behavior unchanged.
Before fixing the response fields in the implementation, capture or confirm the exact real response contract, including HTTP status, body, headers, and whether standard and advanced creation differ.
Acceptance criteria
- The exhausted state can be enabled explicitly for both in-memory and Flask-backed mocks.
- Standard and advanced Model Target dataset creation return the confirmed Vuforia response shape.
- Dataset status, download, and deletion behavior remain unaffected unless real Vuforia demonstrates otherwise.
- Tests cover both mock backends and both dataset types.
- Public API and differences documentation explain the new configuration and identify any behavior not verified against real Vuforia.
- Real Vuforia tests still fail when the live allowance is exhausted; they are not skipped.
Problem
The Model Target Web API mock does not support the exhausted-training-allowance state returned by real Vuforia as
TRAINING_ALLOWANCE_EXCEEDED. This means client error handling for an exhausted account cannot be tested against the mock, and the state is currently encountered only when the shared real Vuforia account has already consumed its allowance.This is distinct from the existing mocked states for VWS
RequestQuotaReached, VWSTargetQuotaReached, project suspension, and VuMarkQuotaExceeded.Proposed behavior
Add a configurable Model Target account state which makes standard and advanced dataset creation return a Vuforia-shaped
TRAINING_ALLOWANCE_EXCEEDEDerror. Keep the default behavior unchanged.Before fixing the response fields in the implementation, capture or confirm the exact real response contract, including HTTP status, body, headers, and whether standard and advanced creation differ.
Acceptance criteria