]> git.proxmox.com Git - ceph.git/blob - ceph/src/test/librbd/CMakeLists.txt
import 15.2.9
[ceph.git] / ceph / src / test / librbd / CMakeLists.txt
1 set(librbd_test_support_srcs
2 test_support.cc
3 )
4 add_library(rbd_test_support STATIC ${librbd_test_support_srcs})
5 target_link_libraries(rbd_test_support PRIVATE
6 GTest::GTest)
7
8 set(librbd_test
9 test_fixture.cc
10 test_librbd.cc
11 test_ImageWatcher.cc
12 test_internal.cc
13 test_mirroring.cc
14 test_BlockGuard.cc
15 test_DeepCopy.cc
16 test_Groups.cc
17 test_Migration.cc
18 test_MirroringWatcher.cc
19 test_ObjectMap.cc
20 test_Operations.cc
21 test_Trash.cc
22 journal/test_Entries.cc
23 journal/test_Replay.cc)
24 add_library(rbd_test STATIC ${librbd_test})
25 target_link_libraries(rbd_test PRIVATE
26 rbd_test_support
27 radostest
28 radostest-cxx
29 librados
30 Boost::thread
31 GMock::GMock
32 GTest::GTest)
33
34 set(librbd_test_mock_srcs
35 mock/MockImageCtx.cc
36 mock/MockJournal.cc)
37 add_library(rbd_test_mock STATIC ${librbd_test_mock_srcs})
38 target_link_libraries(rbd_test_mock PUBLIC
39 GMock::GMock)
40
41 # unittest_librbd
42 # doesn't use add_ceph_test because it is called by run-rbd-unit-tests.sh
43 set(unittest_librbd_srcs
44 test_main.cc
45 test_mock_fixture.cc
46 test_mock_ConfigWatcher.cc
47 test_mock_DeepCopyRequest.cc
48 test_mock_ExclusiveLock.cc
49 test_mock_Journal.cc
50 test_mock_ManagedLock.cc
51 test_mock_ObjectMap.cc
52 test_mock_TrashWatcher.cc
53 test_mock_Watcher.cc
54 cache/test_mock_WriteAroundObjectDispatch.cc
55 cache/test_mock_ParentCacheObjectDispatch.cc
56 deep_copy/test_mock_ImageCopyRequest.cc
57 deep_copy/test_mock_MetadataCopyRequest.cc
58 deep_copy/test_mock_ObjectCopyRequest.cc
59 deep_copy/test_mock_SetHeadRequest.cc
60 deep_copy/test_mock_SnapshotCopyRequest.cc
61 deep_copy/test_mock_SnapshotCreateRequest.cc
62 exclusive_lock/test_mock_PreAcquireRequest.cc
63 exclusive_lock/test_mock_PostAcquireRequest.cc
64 exclusive_lock/test_mock_PreReleaseRequest.cc
65 image/test_mock_AttachChildRequest.cc
66 image/test_mock_AttachParentRequest.cc
67 image/test_mock_CloneRequest.cc
68 image/test_mock_DetachChildRequest.cc
69 image/test_mock_DetachParentRequest.cc
70 image/test_mock_ListWatchersRequest.cc
71 image/test_mock_PreRemoveRequest.cc
72 image/test_mock_RefreshRequest.cc
73 image/test_mock_RemoveRequest.cc
74 image/test_mock_ValidatePoolRequest.cc
75 io/test_mock_CopyupRequest.cc
76 io/test_mock_ImageRequest.cc
77 io/test_mock_ImageRequestWQ.cc
78 io/test_mock_ObjectRequest.cc
79 io/test_mock_SimpleSchedulerObjectDispatch.cc
80 journal/test_mock_OpenRequest.cc
81 journal/test_mock_PromoteRequest.cc
82 journal/test_mock_Replay.cc
83 journal/test_mock_ResetRequest.cc
84 managed_lock/test_mock_AcquireRequest.cc
85 managed_lock/test_mock_BreakRequest.cc
86 managed_lock/test_mock_GetLockerRequest.cc
87 managed_lock/test_mock_ReacquireRequest.cc
88 managed_lock/test_mock_ReleaseRequest.cc
89 mirror/snapshot/test_mock_CreateNonPrimaryRequest.cc
90 mirror/snapshot/test_mock_CreatePrimaryRequest.cc
91 mirror/snapshot/test_mock_ImageMeta.cc
92 mirror/snapshot/test_mock_PromoteRequest.cc
93 mirror/snapshot/test_mock_UnlinkPeerRequest.cc
94 mirror/snapshot/test_mock_Utils.cc
95 mirror/test_mock_DisableRequest.cc
96 object_map/test_mock_DiffRequest.cc
97 object_map/test_mock_InvalidateRequest.cc
98 object_map/test_mock_LockRequest.cc
99 object_map/test_mock_RefreshRequest.cc
100 object_map/test_mock_ResizeRequest.cc
101 object_map/test_mock_SnapshotCreateRequest.cc
102 object_map/test_mock_SnapshotRemoveRequest.cc
103 object_map/test_mock_SnapshotRollbackRequest.cc
104 object_map/test_mock_UnlockRequest.cc
105 object_map/test_mock_UpdateRequest.cc
106 operation/test_mock_DisableFeaturesRequest.cc
107 operation/test_mock_EnableFeaturesRequest.cc
108 operation/test_mock_Request.cc
109 operation/test_mock_ResizeRequest.cc
110 operation/test_mock_SnapshotCreateRequest.cc
111 operation/test_mock_SnapshotProtectRequest.cc
112 operation/test_mock_SnapshotRemoveRequest.cc
113 operation/test_mock_SnapshotRollbackRequest.cc
114 operation/test_mock_SnapshotUnprotectRequest.cc
115 operation/test_mock_TrimRequest.cc
116 trash/test_mock_MoveRequest.cc
117 trash/test_mock_RemoveRequest.cc
118 watcher/test_mock_RewatchRequest.cc
119 )
120
121 if(WITH_RBD_RWL)
122 set(unittest_librbd_srcs
123 ${unittest_librbd_srcs}
124 cache/test_mock_ReplicatedWriteLog.cc)
125 endif(WITH_RBD_RWL)
126
127 add_executable(unittest_librbd
128 ${unittest_librbd_srcs}
129 $<TARGET_OBJECTS:common_texttable_obj>)
130 target_compile_definitions(unittest_librbd PRIVATE "TEST_LIBRBD_INTERNALS")
131 target_link_libraries(unittest_librbd
132 cls_rbd
133 cls_rbd_client
134 cls_lock
135 cls_lock_client
136 journal
137 journal_test_mock
138 cls_journal
139 cls_journal_client
140 rados_test_stub
141 librados
142 rbd_test
143 rbd_test_mock
144 rbd_api
145 rbd_internal
146 rbd_types
147 osdc
148 ceph-common
149 global
150 ${UNITTEST_LIBS})
151
152 add_executable(ceph_test_librbd
153 test_main.cc
154 $<TARGET_OBJECTS:common_texttable_obj>)
155 target_link_libraries(ceph_test_librbd
156 rbd_test
157 rbd_api
158 rbd_internal
159 rbd_types
160 journal
161 cls_journal_client
162 cls_rbd_client
163 librados
164 ${UNITTEST_LIBS}
165 radostest)
166 target_compile_definitions(ceph_test_librbd PRIVATE "TEST_LIBRBD_INTERNALS")
167
168 add_executable(ceph_test_librbd_fsx
169 fsx.cc
170 $<TARGET_OBJECTS:common_texttable_obj>
171 )
172 target_link_libraries(ceph_test_librbd_fsx
173 librbd
174 librados
175 journal
176 global
177 m
178 ${CMAKE_DL_LIBS}
179 ${CRYPTO_LIBS}
180 ${EXTRALIBS}
181 )
182 if(WITH_KRBD)
183 target_link_libraries(ceph_test_librbd_fsx
184 krbd)
185 endif()
186 install(TARGETS
187 ceph_test_librbd_fsx
188 DESTINATION ${CMAKE_INSTALL_BINDIR})
189
190 install(TARGETS
191 ceph_test_librbd
192 DESTINATION ${CMAKE_INSTALL_BINDIR})