Skip to content

Commit 2da26b7

Browse files
authored
Merge pull request #6154 from osalyk/obj_sds-test
test: check if mock functions are used
2 parents a9df9a7 + d19e9fb commit 2da26b7

1 file changed

Lines changed: 36 additions & 31 deletions

File tree

src/test/obj_sds/obj_sds.c

Lines changed: 36 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
// SPDX-License-Identifier: BSD-3-Clause
22
/* Copyright 2017-2023, Intel Corporation */
3+
/* Copyright 2025, Hewlett Packard Enterprise Development LP */
34

45
/*
56
* util_sds.c -- unit test for shutdown status functions
@@ -17,6 +18,38 @@ static uint64_t *uscs;
1718
static size_t uscs_size;
1819
static size_t usc_it;
1920

21+
FUNC_MOCK(pmem2_source_device_id, int, const struct pmem2_source *src,
22+
char *uid, size_t *len)
23+
FUNC_MOCK_RUN_DEFAULT {
24+
if (uid_it < uids_size) {
25+
if (uid != NULL) {
26+
strcpy(uid, uids[uid_it]);
27+
uid_it++;
28+
} else {
29+
*len = strlen(uids[uid_it]) + 1;
30+
}
31+
} else {
32+
return -1;
33+
}
34+
35+
return 0;
36+
}
37+
FUNC_MOCK_END
38+
39+
FUNC_MOCK(pmem2_source_device_usc, int, const struct pmem2_source *src,
40+
uint64_t *usc)
41+
FUNC_MOCK_RUN_DEFAULT {
42+
if (usc_it < uscs_size) {
43+
*usc = uscs[usc_it];
44+
usc_it++;
45+
} else {
46+
return -1;
47+
}
48+
49+
return 0;
50+
}
51+
FUNC_MOCK_END
52+
2053
int
2154
main(int argc, char *argv[])
2255
{
@@ -47,6 +80,9 @@ main(int argc, char *argv[])
4780
if ((pop = pmemobj_create(path, "LAYOUT", 0, 0600)) == NULL) {
4881
UT_FATAL("!%s: pmemobj_create", path);
4982
}
83+
/* check the call counters */
84+
UT_ASSERT(RCOUNTER(pmem2_source_device_id) > 0);
85+
UT_ASSERT(RCOUNTER(pmem2_source_device_usc) > 0);
5086
#if !NDCTL_ENABLED
5187
pmemobj_close(pop);
5288
pmempool_feature_enable(path, PMEMPOOL_FEAT_SHUTDOWN_STATE, 0);
@@ -71,34 +107,3 @@ main(int argc, char *argv[])
71107

72108
DONE(NULL);
73109
}
74-
75-
FUNC_MOCK(pmem2_source_device_id, int, const struct pmem2_source *src,
76-
char *uid, size_t *len)
77-
FUNC_MOCK_RUN_DEFAULT {
78-
if (uid_it < uids_size) {
79-
if (uid != NULL) {
80-
strcpy(uid, uids[uid_it]);
81-
uid_it++;
82-
} else {
83-
*len = strlen(uids[uid_it]) + 1;
84-
}
85-
} else {
86-
return -1;
87-
}
88-
89-
return 0;
90-
}
91-
FUNC_MOCK_END
92-
FUNC_MOCK(pmem2_source_device_usc, int, const struct pmem2_source *src,
93-
uint64_t *usc)
94-
FUNC_MOCK_RUN_DEFAULT {
95-
if (usc_it < uscs_size) {
96-
*usc = uscs[usc_it];
97-
usc_it++;
98-
} else {
99-
return -1;
100-
}
101-
102-
return 0;
103-
}
104-
FUNC_MOCK_END

0 commit comments

Comments
 (0)