This source file includes following definitions.
- null_scheduler
- check_defaults
1
2
3
4
5
6
7
8
9
10 #include <crm_internal.h>
11
12 #include <crm/common/unittest_internal.h>
13
14 #include <crm/common/scheduler.h>
15 #include <crm/pengine/internal.h>
16 #include <crm/pengine/status.h>
17
18 #include "mock_private.h"
19
20 static void
21 null_scheduler(void **state)
22 {
23 pcmk__assert_asserts(pcmk__set_scheduler_defaults(NULL));
24 }
25
26 static void
27 check_defaults(void **state)
28 {
29 uint32_t flags = 0U;
30 pcmk_scheduler_t *scheduler = NULL;
31
32 scheduler = pcmk__assert_alloc(1, sizeof(pcmk_scheduler_t));
33 scheduler->priv = pcmk__assert_alloc(1, sizeof(pcmk__scheduler_private_t));
34 pcmk__set_scheduler_defaults(scheduler);
35
36 flags = pcmk__sched_symmetric_cluster
37 #if PCMK__CONCURRENT_FENCING_DEFAULT_TRUE
38 |pcmk__sched_concurrent_fencing
39 #endif
40 |pcmk__sched_stop_removed_resources
41 |pcmk__sched_cancel_removed_actions;
42
43 assert_null(scheduler->priv->out);
44 assert_int_equal(scheduler->priv->next_ordering_id, 1);
45 assert_int_equal(scheduler->priv->next_action_id, 1);
46 assert_int_equal(scheduler->no_quorum_policy, pcmk_no_quorum_stop);
47 assert_int_equal(scheduler->flags, flags);
48
49 free(scheduler->priv);
50 free(scheduler);
51 }
52
53 PCMK__UNIT_TEST(NULL, NULL,
54 cmocka_unit_test(null_scheduler),
55 cmocka_unit_test(check_defaults))