File tree Expand file tree Collapse file tree 4 files changed +33
-8
lines changed Expand file tree Collapse file tree 4 files changed +33
-8
lines changed Original file line number Diff line number Diff line change 55
55
56
56
// msg returns the message of MessageError
57
57
pub fn (err MessageError) msg () string {
58
+ if err.code > 0 {
59
+ return '$err.msg ; code: $err.code '
60
+ }
58
61
return err.msg
59
62
}
60
63
Original file line number Diff line number Diff line change @@ -20,7 +20,7 @@ fn test_signal_opt_invalid_argument() {
20
20
assert false
21
21
}
22
22
os.signal_opt (.kill, default_handler) or {
23
- assert err.msg () == 'Invalid argument'
23
+ assert err.msg () == 'Invalid argument; code: 22 '
24
24
assert err.code () == 22
25
25
}
26
26
}
Original file line number Diff line number Diff line change 1
- fn opt_err_with_code () ? string {
2
- return error_with_code ('hi' , 137 )
1
+ // TODO: remove this after the deprecation period for `?Type` representing both Result and Option passes.
2
+ fn opt_err_with_code (code int ) ? string {
3
+ return error_with_code ('hi' , code)
3
4
}
4
5
5
6
fn test_err_with_code () {
6
- if w := opt_err_with_code () {
7
+ if w := opt_err_with_code (137 ) {
7
8
assert false
8
9
_ := w
9
10
} else {
10
- assert err.msg () == 'hi'
11
+ assert err.msg () == 'hi; code: 137 '
11
12
assert err.code () == 137
12
13
}
13
- v := opt_err_with_code () or {
14
- assert err.msg () == 'hi'
15
- assert err.code () == 137
14
+ v := opt_err_with_code (56 ) or {
15
+ assert err.msg () == 'hi; code: 56 '
16
+ assert err.code () == 56
16
17
return
17
18
}
18
19
assert false
Original file line number Diff line number Diff line change @@ -94,3 +94,24 @@ fn test_results_if_guard() {
94
94
}
95
95
assert false
96
96
}
97
+
98
+ fn res_err_with_code (code int ) ! string {
99
+ return error_with_code ('hi' , code)
100
+ }
101
+
102
+ fn test_err_with_code () {
103
+ if w := res_err_with_code (137 ) {
104
+ assert false
105
+ _ := w
106
+ } else {
107
+ assert err.msg () == 'hi; code: 137'
108
+ assert err.code () == 137
109
+ }
110
+ v := res_err_with_code (56 ) or {
111
+ assert err.msg () == 'hi; code: 56'
112
+ assert err.code () == 56
113
+ return
114
+ }
115
+ assert false
116
+ _ := v
117
+ }
You can’t perform that action at this time.
0 commit comments