# Copyright (c) 2017, 2019, Oracle and/or its affiliates. All rights reserved. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License, version 2.0, # as published by the Free Software Foundation. # # This program is also distributed with certain software (including # but not limited to OpenSSL) that is licensed under separate terms, # as designated in a particular file or component or in included license # documentation. The authors of MySQL hereby grant you an additional # permission to link the program and your derivative works with the # separately licensed software that they have included with MySQL. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ADD_EXECUTABLE(master_key_test_writer ../helpers/master_key_test_writer.cc) SET_TARGET_PROPERTIES(master_key_test_writer PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/runtime_output_directory) ADD_DEFINITIONS(-DSSL_TEST_DATA_DIR="${CMAKE_SOURCE_DIR}/mysql-test/std_data/") FOREACH(test_file test_bootstrap.cc test_bootstrap_system_deployment.cc test_component_test_framework.cc test_config.cc test_gr_notifications.cc test_http_server.cc test_logging.cc test_logging_eventlog.cc test_master_key_reader_writer.cc test_metadata_ttl.cc test_mock_server.cc test_rest_api.cc test_rest_metadata_cache.cc test_rest_mock_server.cc test_rest_router.cc test_rest_routing.cc test_router_configuration_errors.cc test_routing.cc test_routing_connection.cc test_routing_strategy.cc test_shutdown.cc test_state_file.cc test_user_option.cc ) add_test_file(${CMAKE_CURRENT_SOURCE_DIR}/${test_file} MODULE "component" INCLUDE_DIRS ${PROJECT_SOURCE_DIR}/src/http/include/ ${PROJECT_SOURCE_DIR}/src/mock_server/include/mysqlrouter/ SYSTEM_INCLUDE_DIRS ${GMOCK_INCLUDE_DIRS} ${LIBEVENT_INCLUDE_DIRS} ${PROTOBUF_INCLUDE_DIR} ${MYSQLX_GENERATE_DIR} LIB_DEPENDS http_client http_common mock_server_rest_client DEPENDS http_auth_backend http_auth_realm http_server master_key_test_writer metadata_cache mock_server mysql_server_mock mysqlrouter rest_api rest_metadata_cache rest_router rest_routing routing ) ENDFOREACH() # When system deployment bootstrap is executed, files are # created in locations specified by deployment layout. # Since component tests may not have access to directories defined # in install_layout.cmake, system bootstrap deployment tests are # executed only for STANDALONE layout, and are not executed on Windows. IF(WIN32 OR NOT INSTALL_LAYOUT STREQUAL "STANDALONE") ADD_DEFINITIONS(-DSKIP_BOOTSTRAP_SYSTEM_DEPLOYMENT_TESTS) ENDIF()