pacemaker 2.1.4-dc6eb4362e
Scalable High-Availability cluster resource manager
pcmk_stonith_param_test.c
Go to the documentation of this file.
1/*
2 * Copyright 2020-2021 the Pacemaker project contributors
3 *
4 * The version control history for this file may have further details.
5 *
6 * This source code is licensed under the GNU Lesser General Public License
7 * version 2.1 or later (LGPLv2.1+) WITHOUT ANY WARRANTY.
8 */
9
10#include <crm_internal.h>
11#include <crm/common/agents.h>
12
13#include <stdarg.h>
14#include <stddef.h>
15#include <stdint.h>
16#include <setjmp.h>
17#include <cmocka.h>
18
19static void
20is_stonith_param(void **state)
21{
22 assert_false(pcmk_stonith_param(NULL));
23 assert_false(pcmk_stonith_param(""));
24 assert_false(pcmk_stonith_param("unrecognized"));
25 assert_false(pcmk_stonith_param("pcmk_unrecognized"));
28
38}
39
40static void
41is_stonith_action_param(void **state)
42{
43 /* Currently, the function accepts any string not containing underbars as
44 * the action name, so we do not need to verify particular action names.
45 */
46 assert_false(pcmk_stonith_param("pcmk_on_unrecognized"));
47 assert_true(pcmk_stonith_param("pcmk_on_action"));
48 assert_true(pcmk_stonith_param("pcmk_on_timeout"));
49 assert_true(pcmk_stonith_param("pcmk_on_retries"));
50}
51
52int
53main(int argc, char **argv)
54{
55 const struct CMUnitTest tests[] = {
56 cmocka_unit_test(is_stonith_param),
57 cmocka_unit_test(is_stonith_action_param),
58 };
59
60 cmocka_set_message_output(CM_OUTPUT_TAP);
61 return cmocka_run_group_tests(tests, NULL, NULL);
62}
API related to resource agents.
#define PCMK_STONITH_HOST_LIST
Definition: agents.h:34
#define PCMK_STONITH_STONITH_TIMEOUT
Definition: agents.h:37
#define PCMK_STONITH_HOST_ARGUMENT
Definition: agents.h:32
bool pcmk_stonith_param(const char *param)
Check whether a given stonith parameter is handled by Pacemaker.
Definition: agents.c:170
#define PCMK_STONITH_HOST_MAP
Definition: agents.h:35
#define PCMK_STONITH_DELAY_BASE
Definition: agents.h:30
#define PCMK_STONITH_ACTION_LIMIT
Definition: agents.h:29
#define PCMK_STONITH_HOST_CHECK
Definition: agents.h:33
#define PCMK_STONITH_PROVIDES
Definition: agents.h:36
#define PCMK_STONITH_DELAY_MAX
Definition: agents.h:31
int main(int argc, char **argv)