27 .op_interval_ms = 10000,
38 assert_op_expression(
const char *xml_string,
int reference_rc)
52 #define EXPR_FAIL_BOTH \ 53 "<" PCMK_XE_OP_EXPRESSION " " PCMK_XA_ID "='e' " \ 54 PCMK_XA_NAME "='" PCMK_ACTION_START "' " \ 55 PCMK_XA_INTERVAL "='0' />" 58 null_invalid(
void **state)
68 assert_op_expression(NULL, EINVAL);
76 #define EXPR_ID_MISSING \ 77 "<" PCMK_XE_OP_EXPRESSION " " \ 78 PCMK_XA_NAME "='" PCMK_ACTION_MONITOR "' " \ 79 PCMK_XA_INTERVAL "='10s' />" 81 #define EXPR_ID_EMPTY \ 82 "<" PCMK_XE_OP_EXPRESSION " " PCMK_XA_ID "='' " \ 83 PCMK_XA_NAME "='" PCMK_ACTION_MONITOR "' " \ 84 PCMK_XA_INTERVAL "='10s' />" 87 id_missing(
void **state)
98 #define EXPR_NAME_MISSING \ 99 "<" PCMK_XE_OP_EXPRESSION " " PCMK_XA_ID "='e' " \ 100 PCMK_XA_INTERVAL "='10s' />" 103 name_missing(
void **state)
108 #define EXPR_MATCH_BOTH \ 109 "<" PCMK_XE_OP_EXPRESSION " " PCMK_XA_ID "='e' " \ 110 PCMK_XA_NAME "='" PCMK_ACTION_MONITOR "' " \ 111 PCMK_XA_INTERVAL "='10s' />" 113 #define EXPR_EMPTY_NAME \ 114 "<" PCMK_XE_OP_EXPRESSION " " PCMK_XA_ID "='e' " \ 115 PCMK_XA_NAME "='' " PCMK_XA_INTERVAL "='10s' />" 118 input_name_missing(
void **state)
126 #define EXPR_FAIL_NAME \ 127 "<" PCMK_XE_OP_EXPRESSION " " PCMK_XA_ID "='e' " \ 128 PCMK_XA_NAME "='" PCMK_ACTION_START "' " \ 129 PCMK_XA_INTERVAL "='10s' />" 132 fail_name(
void **state)
145 #define EXPR_EMPTY_INTERVAL \ 146 "<" PCMK_XE_OP_EXPRESSION " " PCMK_XA_ID "='e' " \ 147 PCMK_XA_NAME "='" PCMK_ACTION_MONITOR "' " \ 148 PCMK_XA_INTERVAL "='' />" 150 #define EXPR_INVALID_INTERVAL \ 151 "<" PCMK_XE_OP_EXPRESSION " " PCMK_XA_ID "='e' " \ 152 PCMK_XA_NAME "='" PCMK_ACTION_MONITOR "' " \ 153 PCMK_XA_INTERVAL "='not-an-interval' />" 156 invalid_interval(
void **state)
162 #define EXPR_DEFAULT_INTERVAL \ 163 "<" PCMK_XE_OP_EXPRESSION " " PCMK_XA_ID "='e' " \ 164 PCMK_XA_NAME "='" PCMK_ACTION_MONITOR "' />" 167 default_interval(
void **state)
172 #define EXPR_FAIL_INTERVAL \ 173 "<" PCMK_XE_OP_EXPRESSION " " PCMK_XA_ID "='e' " \ 174 PCMK_XA_NAME "='" PCMK_ACTION_MONITOR "' " \ 175 PCMK_XA_INTERVAL "='9s' />" 178 fail_interval(
void **state)
185 match_both(
void **state)
191 fail_both(
void **state)
197 cmocka_unit_test(null_invalid),
198 cmocka_unit_test(id_missing),
199 cmocka_unit_test(name_missing),
200 cmocka_unit_test(input_name_missing),
201 cmocka_unit_test(fail_name),
202 cmocka_unit_test(invalid_interval),
203 cmocka_unit_test(default_interval),
204 cmocka_unit_test(fail_interval),
205 cmocka_unit_test(match_both),
206 cmocka_unit_test(fail_both))
#define PCMK_ACTION_MONITOR
G_GNUC_INTERNAL int pcmk__evaluate_op_expression(const xmlNode *expr, const pcmk_rule_input_t *rule_input)
#define PCMK__UNIT_TEST(group_setup, group_teardown,...)
void pcmk__xml_free(xmlNode *xml)
#define EXPR_NAME_MISSING
#define EXPR_DEFAULT_INTERVAL
int pcmk__xml_test_setup_group(void **state)
Wrappers for and extensions to libxml2.
int pcmk__xml_test_teardown_group(void **state)
xmlNode * pcmk__xml_parse(const char *input)
#define EXPR_FAIL_INTERVAL
#define EXPR_INVALID_INTERVAL
#define EXPR_EMPTY_INTERVAL