Skip to content

Commit 4f85bf3

Browse files
committed
Refactor: libcrmcommon: Reduce duplication of null output create funcs
Signed-off-by: Reid Wahl <nrwahl@protonmail.com>
1 parent 960a304 commit 4f85bf3

5 files changed

Lines changed: 41 additions & 49 deletions

File tree

include/crm/common/unittest_internal.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,8 @@ void pcmk__set_testing_output_free(bool value);
146146
void pcmk__set_testing_output_and_clear_error(bool value);
147147
void pcmk__expect_fake_text_free_priv(void);
148148
void pcmk__expect_fake_text_err(void);
149+
pcmk__output_t *pcmk__output_null_create1(char **argv);
150+
pcmk__output_t *pcmk__output_null_create2(char **argv);
149151

150152
/*!
151153
* \internal

lib/common/tests/output/pcmk__register_format_test.c

Lines changed: 9 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -11,24 +11,15 @@
1111

1212
#include <crm/common/unittest_internal.h>
1313

14-
static pcmk__output_t *
15-
null_create_fn(char **argv)
16-
{
17-
return NULL;
18-
}
19-
20-
static pcmk__output_t *
21-
null_create_fn_2(char **argv)
22-
{
23-
return NULL;
24-
}
25-
2614
static void
2715
invalid_params(void **state)
2816
{
2917
pcmk__assert_asserts(pcmk__register_format(NULL, "fake", NULL, NULL));
30-
pcmk__assert_asserts(pcmk__register_format(NULL, "", null_create_fn, NULL));
31-
pcmk__assert_asserts(pcmk__register_format(NULL, NULL, null_create_fn,
18+
pcmk__assert_asserts(pcmk__register_format(NULL, "",
19+
pcmk__output_null_create1,
20+
NULL));
21+
pcmk__assert_asserts(pcmk__register_format(NULL, NULL,
22+
pcmk__output_null_create1,
3223
NULL));
3324
}
3425

@@ -45,26 +36,26 @@ add_format(void **state)
4536
/* Add a fake formatter and check that it's the only item in the hash
4637
* table
4738
*/
48-
rc = pcmk__register_format(NULL, "fake", null_create_fn, NULL);
39+
rc = pcmk__register_format(NULL, "fake", pcmk__output_null_create1, NULL);
4940
assert_int_equal(rc, pcmk_rc_ok);
5041

5142
formatters = pcmk__output_formatters();
5243
assert_int_equal(g_hash_table_size(formatters), 1);
5344

5445
value = g_hash_table_lookup(formatters, "fake");
55-
assert_ptr_equal(value, null_create_fn);
46+
assert_ptr_equal(value, pcmk__output_null_create1);
5647

5748
/* Add a second fake formatter that should overwrite the first one, leaving
5849
* only one item (with the new function) in the hash table
5950
*/
60-
rc = pcmk__register_format(NULL, "fake", null_create_fn_2, NULL);
51+
rc = pcmk__register_format(NULL, "fake", pcmk__output_null_create2, NULL);
6152
assert_int_equal(rc, pcmk_rc_ok);
6253

6354
formatters = pcmk__output_formatters();
6455
assert_int_equal(g_hash_table_size(formatters), 1);
6556

6657
value = g_hash_table_lookup(formatters, "fake");
67-
assert_ptr_equal(value, null_create_fn_2);
58+
assert_ptr_equal(value, pcmk__output_null_create2);
6859

6960
pcmk__unregister_formats();
7061
}

lib/common/tests/output/pcmk__register_formats_test.c

Lines changed: 17 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -11,18 +11,6 @@
1111

1212
#include <crm/common/unittest_internal.h>
1313

14-
static pcmk__output_t *
15-
null_create_fn(char **argv)
16-
{
17-
return NULL;
18-
}
19-
20-
static pcmk__output_t *
21-
null_create_fn_2(char **argv)
22-
{
23-
return NULL;
24-
}
25-
2614
static void
2715
no_formats(void **state)
2816
{
@@ -37,7 +25,7 @@ invalid_entries(void **state)
3725
* the marker for the end of the format table.
3826
*/
3927
pcmk__supported_format_t formats[] = {
40-
{ "", null_create_fn, NULL },
28+
{ "", pcmk__output_null_create1, NULL },
4129
{ NULL },
4230
};
4331

@@ -50,17 +38,19 @@ valid_entries(void **state)
5038
GHashTable *formatters = NULL;
5139

5240
pcmk__supported_format_t formats[] = {
53-
{ "fmt1", null_create_fn, NULL },
54-
{ "fmt2", null_create_fn_2, NULL },
41+
{ "fmt1", pcmk__output_null_create1, NULL },
42+
{ "fmt2", pcmk__output_null_create2, NULL },
5543
{ NULL },
5644
};
5745

5846
pcmk__register_formats(NULL, formats);
5947

6048
formatters = pcmk__output_formatters();
6149
assert_int_equal(g_hash_table_size(formatters), 2);
62-
assert_ptr_equal(g_hash_table_lookup(formatters, "fmt1"), null_create_fn);
63-
assert_ptr_equal(g_hash_table_lookup(formatters, "fmt2"), null_create_fn_2);
50+
assert_ptr_equal(g_hash_table_lookup(formatters, "fmt1"),
51+
pcmk__output_null_create1);
52+
assert_ptr_equal(g_hash_table_lookup(formatters, "fmt2"),
53+
pcmk__output_null_create2);
6454

6555
pcmk__unregister_formats();
6656
}
@@ -71,16 +61,17 @@ duplicate_keys(void **state)
7161
GHashTable *formatters = NULL;
7262

7363
pcmk__supported_format_t formats[] = {
74-
{ "fmt1", null_create_fn, NULL },
75-
{ "fmt1", null_create_fn_2, NULL },
64+
{ "fmt1", pcmk__output_null_create1, NULL },
65+
{ "fmt1", pcmk__output_null_create2, NULL },
7666
{ NULL },
7767
};
7868

7969
pcmk__register_formats(NULL, formats);
8070

8171
formatters = pcmk__output_formatters();
8272
assert_int_equal(g_hash_table_size(formatters), 1);
83-
assert_ptr_equal(g_hash_table_lookup(formatters, "fmt1"), null_create_fn_2);
73+
assert_ptr_equal(g_hash_table_lookup(formatters, "fmt1"),
74+
pcmk__output_null_create2);
8475

8576
pcmk__unregister_formats();
8677
}
@@ -91,17 +82,19 @@ duplicate_values(void **state)
9182
GHashTable *formatters = NULL;
9283

9384
pcmk__supported_format_t formats[] = {
94-
{ "fmt1", null_create_fn, NULL },
95-
{ "fmt2", null_create_fn, NULL },
85+
{ "fmt1", pcmk__output_null_create1, NULL },
86+
{ "fmt2", pcmk__output_null_create1, NULL },
9687
{ NULL },
9788
};
9889

9990
pcmk__register_formats(NULL, formats);
10091

10192
formatters = pcmk__output_formatters();
10293
assert_int_equal(g_hash_table_size(formatters), 2);
103-
assert_ptr_equal(g_hash_table_lookup(formatters, "fmt1"), null_create_fn);
104-
assert_ptr_equal(g_hash_table_lookup(formatters, "fmt2"), null_create_fn);
94+
assert_ptr_equal(g_hash_table_lookup(formatters, "fmt1"),
95+
pcmk__output_null_create1);
96+
assert_ptr_equal(g_hash_table_lookup(formatters, "fmt2"),
97+
pcmk__output_null_create1);
10598

10699
pcmk__unregister_formats();
107100
}

lib/common/tests/output/pcmk__unregister_formats_test.c

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,6 @@
1111

1212
#include <crm/common/unittest_internal.h>
1313

14-
static pcmk__output_t *
15-
null_create_fn(char **argv)
16-
{
17-
return NULL;
18-
}
19-
2014
static void
2115
invalid_params(void **state)
2216
{
@@ -30,7 +24,7 @@ invalid_params(void **state)
3024
static void
3125
non_null_formatters(void **state)
3226
{
33-
pcmk__register_format(NULL, "fake", null_create_fn, NULL);
27+
pcmk__register_format(NULL, "fake", pcmk__output_null_create1, NULL);
3428

3529
pcmk__unregister_formats();
3630
assert_null(pcmk__output_formatters());

lib/common/unittest.c

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -268,4 +268,16 @@ pcmk__expect_fake_text_err(void)
268268
expect_function_call(fake_text_err);
269269
}
270270

271+
pcmk__output_t *
272+
pcmk__output_null_create1(char **argv)
273+
{
274+
return NULL;
275+
}
276+
277+
pcmk__output_t *
278+
pcmk__output_null_create2(char **argv)
279+
{
280+
return NULL;
281+
}
282+
271283
// LCOV_EXCL_STOP

0 commit comments

Comments
 (0)