blob: 97262002c9489152d84da8afbc5f0720ccbab5a4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
DD 42: Wallet Dev Experiments
#############################
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.
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.
Requirements
============
The implementation of synthetic errors should be as separate from production
code as possible, to avoid making the normal code paths unreadable.
Proposed Solution
=================
Special taler:// URIs
---------------------
* ``taler://dev-experiment/$STATE_ID``
* ``taler://pay/...?dev-experiment=``
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.
List of experiments
-------------------
Alternatives
============
Drawbacks
=========
Discussion / Q&A
================
(This should be filled in with results from discussions on mailing lists / personal communication.)
|