Commit | Line | Data |
---|---|---|
7e9d7f2c SK |
1 | -module(hope_result_SUITE). |
2 | ||
8bbf6f4d PO |
3 | -include_lib("proper/include/proper.hrl"). |
4 | ||
7e9d7f2c SK |
5 | %% Callbacks |
6 | -export( | |
7 | [ all/0 | |
8 | , groups/0 | |
126c8880 SK |
9 | , init_per_group/2 |
10 | , end_per_group/2 | |
7e9d7f2c SK |
11 | ]). |
12 | ||
13 | %% Test cases | |
14 | -export( | |
126c8880 SK |
15 | [ t_pipe_ok/1 |
16 | , t_pipe_error/1 | |
8bbf6f4d | 17 | , t_hope_result_specs/1 |
7e9d7f2c SK |
18 | ]). |
19 | ||
20 | ||
21 | -define(GROUP_PIPE, result_pipe). | |
22 | ||
23 | ||
24 | %% ============================================================================ | |
25 | %% Common Test callbacks | |
26 | %% ============================================================================ | |
27 | ||
28 | all() -> | |
29 | [{group, ?GROUP_PIPE}]. | |
30 | ||
31 | groups() -> | |
32 | Tests = | |
126c8880 SK |
33 | [ t_pipe_ok |
34 | , t_pipe_error | |
8bbf6f4d | 35 | , t_hope_result_specs |
7e9d7f2c | 36 | ], |
8bbf6f4d | 37 | Properties = [parallel], |
7e9d7f2c SK |
38 | [{?GROUP_PIPE, Properties, Tests}]. |
39 | ||
126c8880 | 40 | init_per_group(?GROUP_PIPE, Cfg) -> |
7e9d7f2c | 41 | Steps = |
55182c1b SK |
42 | [ fun (0) -> {ok, 1}; (X) -> {error, X} end |
43 | , fun (1) -> {ok, 2}; (X) -> {error, X} end | |
44 | , fun (2) -> {ok, 3}; (X) -> {error, X} end | |
7e9d7f2c | 45 | ], |
126c8880 SK |
46 | hope_kv_list:set(Cfg, steps, Steps). |
47 | ||
48 | end_per_group(?GROUP_PIPE, _Cfg) -> | |
49 | ok. | |
50 | ||
51 | ||
52 | %% ============================================================================= | |
53 | %% Test cases | |
54 | %% ============================================================================= | |
55 | ||
56 | t_pipe_ok(Cfg) -> | |
57 | {some, Steps} = hope_kv_list:get(Cfg, steps), | |
55182c1b | 58 | {ok, 3} = hope_result:pipe(Steps, 0). |
126c8880 SK |
59 | |
60 | t_pipe_error(Cfg) -> | |
61 | {some, Steps} = hope_kv_list:get(Cfg, steps), | |
62 | {error, 1} = hope_result:pipe(Steps, 1). | |
8bbf6f4d PO |
63 | |
64 | t_hope_result_specs(_) -> | |
65 | [] = proper:check_specs(hope_result). |