Commit | Line | Data |
---|---|---|
5d7e8359 PP |
1 | /* |
2 | * SPDX-License-Identifier: GPL-2.0-only | |
3 | * | |
4 | * Copyright (C) 2020 Philippe Proulx <pproulx@efficios.com> | |
5 | */ | |
6 | ||
7 | #include <babeltrace2/babeltrace.h> | |
8 | ||
9 | #include "common/assert.h" | |
10 | #include "utils.h" | |
11 | ||
cc09350f SM |
12 | static |
13 | void trigger_graph_mip_version(void) | |
14 | { | |
15 | bt_graph_create(292); | |
16 | } | |
17 | ||
5d7e8359 PP |
18 | static |
19 | bt_field_class *get_uint_fc(bt_self_component *self_comp) | |
20 | { | |
21 | bt_trace_class *tc = bt_trace_class_create(self_comp); | |
22 | bt_field_class *fc; | |
23 | ||
24 | BT_ASSERT(tc); | |
25 | fc = bt_field_class_integer_unsigned_create(tc); | |
26 | BT_ASSERT(fc); | |
27 | return fc; | |
28 | } | |
29 | ||
30 | static | |
31 | void trigger_fc_int_set_field_value_range_n_0(bt_self_component *self_comp) | |
32 | { | |
33 | bt_field_class_integer_set_field_value_range(get_uint_fc(self_comp), 0); | |
34 | } | |
35 | ||
36 | static | |
37 | void trigger_fc_int_set_field_value_range_n_gt_64(bt_self_component *self_comp) | |
38 | { | |
39 | bt_field_class_integer_set_field_value_range(get_uint_fc(self_comp), | |
40 | 65); | |
41 | } | |
42 | ||
43 | static | |
44 | void trigger_fc_int_set_field_value_range_null(bt_self_component *self_comp) | |
45 | { | |
46 | bt_field_class_integer_set_field_value_range(NULL, 23); | |
47 | } | |
48 | ||
49 | static | |
50 | const struct cond_trigger triggers[] = { | |
cc09350f SM |
51 | COND_TRIGGER_PRE_BASIC("pre:graph-create:valid-mip-version", NULL, |
52 | trigger_graph_mip_version), | |
5d7e8359 PP |
53 | COND_TRIGGER_PRE_RUN_IN_COMP_CLS_INIT( |
54 | "pre:field-class-integer-set-field-value-range:valid-n", | |
55 | "0", | |
56 | trigger_fc_int_set_field_value_range_n_0 | |
57 | ), | |
58 | COND_TRIGGER_PRE_RUN_IN_COMP_CLS_INIT( | |
59 | "pre:field-class-integer-set-field-value-range:valid-n", | |
60 | "gt-64", | |
61 | trigger_fc_int_set_field_value_range_n_gt_64 | |
62 | ), | |
63 | COND_TRIGGER_PRE_RUN_IN_COMP_CLS_INIT( | |
64 | "pre:field-class-integer-set-field-value-range:not-null:field-class", | |
65 | NULL, | |
66 | trigger_fc_int_set_field_value_range_null | |
67 | ), | |
68 | }; | |
69 | ||
70 | int main(int argc, const char *argv[]) | |
71 | { | |
72 | cond_main(argc, argv, triggers, sizeof(triggers) / sizeof(*triggers)); | |
73 | return 0; | |
74 | } |