pacemaker 3.0.1-16e74fc4da
Scalable High-Availability cluster resource manager
Loading...
Searching...
No Matches
pcmk__results_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 General Public License version 2
7 * or later (GPLv2+) WITHOUT ANY WARRANTY.
8 */
9
10#include <crm_internal.h>
11
13
14#include <glib.h>
15#include <bzlib.h>
16
17static void
18test_for_pcmk_rc_name(void **state) {
19 assert_string_equal(pcmk_rc_name(pcmk_rc_error-1), "pcmk_rc_unknown_format");
20 assert_string_equal(pcmk_rc_name(pcmk_rc_ok), "pcmk_rc_ok");
21 assert_string_equal(pcmk_rc_name(pcmk_rc_ok), "pcmk_rc_ok");
22 assert_string_equal(pcmk_rc_name(-7777777), "Unknown");
23}
24
25static void
26test_for_pcmk_rc_str(void **state) {
27 assert_string_equal(pcmk_rc_str(pcmk_rc_error-1), "Unknown output format");
28 assert_string_equal(pcmk_rc_str(pcmk_rc_ok), "OK");
29 assert_string_equal(pcmk_rc_str(-1), "Error");
30}
31
32static void
33test_for_crm_exit_name(void **state) {
34 assert_string_equal(crm_exit_name(CRM_EX_OK), "CRM_EX_OK");
35}
36
37static void
38test_for_crm_exit_str(void **state) {
39 assert_string_equal(crm_exit_str(CRM_EX_OK), "OK");
40 assert_string_equal(crm_exit_str(129), "Interrupted by signal");
41 assert_string_equal(crm_exit_str(-7777777), "Unknown exit status");
42}
43
44static void
45test_for_pcmk_rc2exitc(void **state) {
46 assert_int_equal(pcmk_rc2exitc(pcmk_rc_ok), CRM_EX_OK);
47 assert_int_equal(pcmk_rc2exitc(-7777777), CRM_EX_ERROR);
48}
49
50PCMK__UNIT_TEST(NULL, NULL,
51 cmocka_unit_test(test_for_pcmk_rc_name),
52 cmocka_unit_test(test_for_pcmk_rc_str),
53 cmocka_unit_test(test_for_crm_exit_name),
54 cmocka_unit_test(test_for_crm_exit_str),
55 cmocka_unit_test(test_for_pcmk_rc2exitc))
const char * pcmk_rc_name(int rc)
Get a return code constant name as a string.
Definition results.c:457
const char * pcmk_rc_str(int rc)
Get a user-friendly description of a return code.
Definition results.c:617
@ CRM_EX_ERROR
Unspecified error.
Definition results.h:234
@ CRM_EX_OK
Success.
Definition results.h:233
@ pcmk_rc_ok
Definition results.h:159
@ pcmk_rc_error
Definition results.h:154
const char * crm_exit_name(crm_exit_t exit_code)
Definition results.c:704
const char * crm_exit_str(crm_exit_t exit_code)
Definition results.c:757
crm_exit_t pcmk_rc2exitc(int rc)
Map a function return code to the most similar exit code.
Definition results.c:820
#define PCMK__UNIT_TEST(group_setup, group_teardown,...)