Commit bfcf6d5
authored
🐛 fix(web): expose loader failures (#1860)
* 🐛 fix(web): expose loader failures
Deserialize browser responses into strict endpoint wire types so malformed or
failed requests cannot become valid empty UI models.
Keep the last loaded data visible while displaying the bounded loader error.
Refs #1358
* 🧪 test(web): cover loader failure state
CI caught six untested error-formatting lines and one retained-state branch.
The missing cases left the refresh failure contract unverified in native builds.
Table-driven message cases cover each error kind. A state transition test
verifies that a failed refresh reports the error while preserving the prior
value.1 parent 70abe41 commit bfcf6d5
22 files changed
Lines changed: 1101 additions & 293 deletions
File tree
- crates
- peryx-ecosystem-pypi/tests/frontend/tests
- peryx-web
- src
- data
- model
- pages
- tests
- frontend/tests
- unit
- model
- login
- snapshot
- pages
- admin
- dashboard
Lines changed: 5 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
387 | 387 | | |
388 | 388 | | |
389 | 389 | | |
390 | | - | |
| 390 | + | |
391 | 391 | | |
392 | 392 | | |
393 | 393 | | |
| |||
430 | 430 | | |
431 | 431 | | |
432 | 432 | | |
433 | | - | |
434 | | - | |
435 | | - | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
436 | 437 | | |
437 | 438 | | |
438 | 439 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
6 | | - | |
7 | | - | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
8 | 24 | | |
9 | 25 | | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
10 | 45 | | |
11 | | - | |
12 | | - | |
13 | | - | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
14 | 52 | | |
15 | 53 | | |
16 | 54 | | |
17 | 55 | | |
18 | 56 | | |
19 | | - | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
20 | 61 | | |
21 | 62 | | |
22 | 63 | | |
23 | 64 | | |
24 | 65 | | |
25 | | - | |
| 66 | + | |
26 | 67 | | |
27 | 68 | | |
28 | 69 | | |
29 | 70 | | |
30 | | - | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
31 | 75 | | |
32 | 76 | | |
33 | 77 | | |
34 | 78 | | |
35 | 79 | | |
36 | | - | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
| 80 | + | |
51 | 81 | | |
52 | 82 | | |
53 | 83 | | |
| |||
63 | 93 | | |
64 | 94 | | |
65 | 95 | | |
66 | | - | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
67 | 101 | | |
68 | 102 | | |
69 | | - | |
70 | | - | |
71 | | - | |
| 103 | + | |
72 | 104 | | |
73 | 105 | | |
74 | 106 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
3 | 19 | | |
4 | | - | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
5 | 25 | | |
6 | 26 | | |
7 | | - | |
| 27 | + | |
8 | 28 | | |
9 | 29 | | |
10 | 30 | | |
11 | 31 | | |
12 | | - | |
13 | | - | |
14 | | - | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
15 | 38 | | |
16 | 39 | | |
17 | 40 | | |
18 | 41 | | |
19 | 42 | | |
20 | | - | |
| 43 | + | |
21 | 44 | | |
22 | 45 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| 16 | + | |
16 | 17 | | |
17 | | - | |
| 18 | + | |
18 | 19 | | |
19 | 20 | | |
20 | 21 | | |
| |||
30 | 31 | | |
31 | 32 | | |
32 | 33 | | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
0 commit comments