Add basic libcynara-agent tests
[platform/core/test/security-tests.git] / src / cynara-tests / CMakeLists.txt
1 # Copyright (c) 2014-2015 Samsung Electronics Co., Ltd All Rights Reserved
2 #
3 #    Licensed under the Apache License, Version 2.0 (the "License");
4 #    you may not use this file except in compliance with the License.
5 #    You may obtain a copy of the License at
6 #
7 #        http://www.apache.org/licenses/LICENSE-2.0
8 #
9 #    Unless required by applicable law or agreed to in writing, software
10 #    distributed under the License is distributed on an "AS IS" BASIS,
11 #    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 #    See the License for the specific language governing permissions and
13 #    limitations under the License.
14 #
15
16 cmake_minimum_required(VERSION 2.8.3)
17
18 INCLUDE(FindPkgConfig)
19 SET(CYNARA_TARGET_TEST "cynara-test")
20
21 PKG_CHECK_MODULES(CYNARA_TARGET_DEP
22     REQUIRED
23     libprivilege-control
24     cynara-admin
25     cynara-agent
26     cynara-client
27     cynara-client-async
28     cynara-plugin
29     dbus-1
30     )
31
32 #files to compile
33 SET(CYNARA_TARGET_TEST_SOURCES
34     ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_admin.cpp
35     ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_agent.cpp
36     ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_agent_request.cpp
37     ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_agent_response.cpp
38     ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_client.cpp
39     ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_client_async_client.cpp
40     ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_client_async_request_monitor.cpp
41     ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_client_async_status_monitor.cpp
42     ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_commons.cpp
43     ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_cynara_mask.cpp
44     ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_env.cpp
45     ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_file_operations.cpp
46     ${PROJECT_SOURCE_DIR}/src/cynara-tests/plugins/plugins.cpp
47     ${PROJECT_SOURCE_DIR}/src/cynara-tests/cynara-test.cpp
48     ${PROJECT_SOURCE_DIR}/src/cynara-tests/test_cases.cpp
49     ${PROJECT_SOURCE_DIR}/src/cynara-tests/test_cases_agent.cpp
50     ${PROJECT_SOURCE_DIR}/src/cynara-tests/test_cases_async.cpp
51     ${PROJECT_SOURCE_DIR}/src/cynara-tests/test_cases_db.cpp
52     )
53
54 #header directories
55 INCLUDE_DIRECTORIES(SYSTEM
56     ${CYNARA_TARGET_DEP_INCLUDE_DIRS}
57     )
58
59 INCLUDE_DIRECTORIES(
60     ${PROJECT_SOURCE_DIR}/src/common/
61     ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/
62     ${PROJECT_SOURCE_DIR}/src/cynara-tests/plugins/
63     )
64
65
66 #output format
67 ADD_EXECUTABLE(${CYNARA_TARGET_TEST} ${CYNARA_TARGET_TEST_SOURCES})
68
69 #linker directories
70 TARGET_LINK_LIBRARIES(${CYNARA_TARGET_TEST}
71     ${CYNARA_TARGET_DEP_LIBRARIES}
72     dpl-test-framework
73     tests-common
74     )
75
76 #place for output file
77 INSTALL(TARGETS ${CYNARA_TARGET_TEST}
78     DESTINATION /usr/bin
79     PERMISSIONS OWNER_READ
80                 OWNER_WRITE
81                 OWNER_EXECUTE
82                 GROUP_READ
83                 GROUP_EXECUTE
84                 WORLD_READ
85                 WORLD_EXECUTE
86     )
87
88 INSTALL(FILES
89     ${PROJECT_SOURCE_DIR}/src/cynara-tests/WRT_test_for_cynara_rules.smack
90     DESTINATION /usr/share/privilege-control/
91 )
92
93 INSTALL(DIRECTORY
94     ${PROJECT_SOURCE_DIR}/src/cynara-tests/db_patterns
95     DESTINATION /etc/security-tests/
96 )
97
98 ADD_SUBDIRECTORY(plugins)