10.42. DD 42: Wallet Dev Experiments#

10.42.1. Summary#

This design document defines new taler:// URIs to cause synthetic errors or special states in the wallet that can then be rendered by the UI.

10.42.2. Motivation#

UIs need to handle various (error-) states and responses of wallet-core. It’s not easy to cover all of these states and responses manually. Some of them are hard to reach or simulate without an elaborate test setup.

10.42.3. Requirements#

The implementation of synthetic errors should be as separate from production code as possible, to avoid making the normal code paths unreadable.

10.42.4. Proposed Solution#

10.42.4.1. Special taler:// URIs#

  • taler://dev-experiment/$STATE_ID

  • taler://pay/...?dev-experiment=

10.42.4.2. Special http(s):// URIs#

  • http(s)://*.dev-experiment.taler.net/

    • URLs for this subdomain are handled specially by the wallet’s HTTP layer and return fixed / mocked responses instead of making real requests.

10.42.4.3. List of experiments#

10.42.5. Alternatives#

10.42.6. Drawbacks#

10.42.7. Discussion / Q&A#

(This should be filled in with results from discussions on mailing lists / personal communication.)