Currently, a paymentswiki instance with empty configuration will not work properly, and cannot make requests to the payment processors.
We want to fall back to a mode which does not require credentials, and does not make internet connections. This will make it possible to do any sort of testing of multi-step donation workflows.
Requirements
- It should be inescapably obvious to the user, whenever they are in local dev mode… but not in such an extreme way that we couldn’t use this technique to finally allow selenium tests to be possible.
- In local dev mode, there will be no attempts to actually contact third parties. Ideally, this would be rendered impossible within all gateways in local dev mode.
- Short-circuit all FormChooser safety checks, for any gateway in local dev mode.
- All 3rd party responses and workflows will be faked when we are in local dev mode.
- When a gateway takes you to a piece of the workflow hosted by a 3rd party, local dev mode will allow the user to supply the values for expected parameters that they would like to be pretending to receive from the 3rd party.
- For all gateways, if the user is typically sent away to a third party and expected to return, it should always be possible in local dev mode to get 100% of the way to the Thank You or Error page by very thoroughly faking the external bits, internally.