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;
1718static size_t uscs_size ;
1819static 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+
2053int
2154main (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