# Copyright 2013-2016, Corvusoft Ltd, All Rights Reserved.

project( "acceptance test suite" )

cmake_minimum_required( VERSION 2.8.10 )

#
# Configuration
#
set( SOURCE_DIR "source" )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DCATCH_CONFIG_MAIN" )

include_directories( SYSTEM ${catch_INCLUDE} ${asio_INCLUDE} )

#
# Build
#
add_executable( publishing_single_path_resources_http_get_acceptance_test_suite ${SOURCE_DIR}/publishing_single_path_resources/http_get.cpp )
target_link_libraries( publishing_single_path_resources_http_get_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_single_path_resources_http_get_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_single_path_resources_http_get_acceptance_test_suite )

add_executable( publishing_single_path_resources_http_put_acceptance_test_suite ${SOURCE_DIR}/publishing_single_path_resources/http_put.cpp )
target_link_libraries( publishing_single_path_resources_http_put_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_single_path_resources_http_put_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_single_path_resources_http_put_acceptance_test_suite )

add_executable( publishing_single_path_resources_http_head_acceptance_test_suite ${SOURCE_DIR}/publishing_single_path_resources/http_head.cpp )
target_link_libraries( publishing_single_path_resources_http_head_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_single_path_resources_http_head_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_single_path_resources_http_head_acceptance_test_suite )

add_executable( publishing_single_path_resources_http_post_acceptance_test_suite ${SOURCE_DIR}/publishing_single_path_resources/http_post.cpp )
target_link_libraries( publishing_single_path_resources_http_post_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_single_path_resources_http_post_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_single_path_resources_http_post_acceptance_test_suite )

add_executable( publishing_single_path_resources_http_trace_acceptance_test_suite ${SOURCE_DIR}/publishing_single_path_resources/http_trace.cpp )
target_link_libraries( publishing_single_path_resources_http_trace_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_single_path_resources_http_trace_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_single_path_resources_http_trace_acceptance_test_suite )

add_executable( publishing_single_path_resources_http_patch_acceptance_test_suite ${SOURCE_DIR}/publishing_single_path_resources/http_patch.cpp )
target_link_libraries( publishing_single_path_resources_http_patch_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_single_path_resources_http_patch_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_single_path_resources_http_patch_acceptance_test_suite )

add_executable( publishing_single_path_resources_http_delete_acceptance_test_suite ${SOURCE_DIR}/publishing_single_path_resources/http_delete.cpp )
target_link_libraries( publishing_single_path_resources_http_delete_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_single_path_resources_http_delete_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_single_path_resources_http_delete_acceptance_test_suite )

add_executable( publishing_single_path_resources_http_connect_acceptance_test_suite ${SOURCE_DIR}/publishing_single_path_resources/http_connect.cpp )
target_link_libraries( publishing_single_path_resources_http_connect_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_single_path_resources_http_connect_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_single_path_resources_http_connect_acceptance_test_suite )

add_executable( publishing_single_path_resources_http_options_acceptance_test_suite ${SOURCE_DIR}/publishing_single_path_resources/http_options.cpp )
target_link_libraries( publishing_single_path_resources_http_options_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_single_path_resources_http_options_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_single_path_resources_http_options_acceptance_test_suite )

add_executable( publishing_multi_path_resources_http_get_acceptance_test_suite ${SOURCE_DIR}/publishing_multi_path_resources/http_get.cpp )
target_link_libraries( publishing_multi_path_resources_http_get_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_multi_path_resources_http_get_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_multi_path_resources_http_get_acceptance_test_suite )

add_executable( publishing_multi_path_resources_http_put_acceptance_test_suite ${SOURCE_DIR}/publishing_multi_path_resources/http_put.cpp )
target_link_libraries( publishing_multi_path_resources_http_put_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_multi_path_resources_http_put_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_multi_path_resources_http_put_acceptance_test_suite )

add_executable( publishing_multi_path_resources_http_head_acceptance_test_suite ${SOURCE_DIR}/publishing_multi_path_resources/http_head.cpp )
target_link_libraries( publishing_multi_path_resources_http_head_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_multi_path_resources_http_head_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_multi_path_resources_http_head_acceptance_test_suite )

add_executable( publishing_multi_path_resources_http_post_acceptance_test_suite ${SOURCE_DIR}/publishing_multi_path_resources/http_post.cpp )
target_link_libraries( publishing_multi_path_resources_http_post_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_multi_path_resources_http_post_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_multi_path_resources_http_post_acceptance_test_suite )

add_executable( publishing_multi_path_resources_http_trace_acceptance_test_suite ${SOURCE_DIR}/publishing_multi_path_resources/http_trace.cpp )
target_link_libraries( publishing_multi_path_resources_http_trace_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_multi_path_resources_http_trace_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_multi_path_resources_http_trace_acceptance_test_suite )

add_executable( publishing_multi_path_resources_http_patch_acceptance_test_suite ${SOURCE_DIR}/publishing_multi_path_resources/http_patch.cpp )
target_link_libraries( publishing_multi_path_resources_http_patch_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_multi_path_resources_http_patch_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_multi_path_resources_http_patch_acceptance_test_suite )

add_executable( publishing_multi_path_resources_http_delete_acceptance_test_suite ${SOURCE_DIR}/publishing_multi_path_resources/http_delete.cpp )
target_link_libraries( publishing_multi_path_resources_http_delete_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_multi_path_resources_http_delete_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_multi_path_resources_http_delete_acceptance_test_suite )

add_executable( publishing_multi_path_resources_http_connect_acceptance_test_suite ${SOURCE_DIR}/publishing_multi_path_resources/http_connect.cpp )
target_link_libraries( publishing_multi_path_resources_http_connect_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_multi_path_resources_http_connect_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_multi_path_resources_http_connect_acceptance_test_suite )

add_executable( publishing_multi_path_resources_http_options_acceptance_test_suite ${SOURCE_DIR}/publishing_multi_path_resources/http_options.cpp )
target_link_libraries( publishing_multi_path_resources_http_options_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publishing_multi_path_resources_http_options_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publishing_multi_path_resources_http_options_acceptance_test_suite )

add_executable( custom_http_methods_http_get_acceptance_test_suite ${SOURCE_DIR}/custom_http_methods/http_get.cpp )
target_link_libraries( custom_http_methods_http_get_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_http_methods_http_get_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_http_methods_http_get_acceptance_test_suite )

add_executable( custom_http_methods_http_put_acceptance_test_suite ${SOURCE_DIR}/custom_http_methods/http_put.cpp )
target_link_libraries( custom_http_methods_http_put_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_http_methods_http_put_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_http_methods_http_put_acceptance_test_suite )

add_executable( custom_http_methods_http_head_acceptance_test_suite ${SOURCE_DIR}/custom_http_methods/http_head.cpp )
target_link_libraries( custom_http_methods_http_head_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_http_methods_http_head_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_http_methods_http_head_acceptance_test_suite )

add_executable( custom_http_methods_http_post_acceptance_test_suite ${SOURCE_DIR}/custom_http_methods/http_post.cpp )
target_link_libraries( custom_http_methods_http_post_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_http_methods_http_post_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_http_methods_http_post_acceptance_test_suite )

add_executable( custom_http_methods_http_trace_acceptance_test_suite ${SOURCE_DIR}/custom_http_methods/http_trace.cpp )
target_link_libraries( custom_http_methods_http_trace_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_http_methods_http_trace_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_http_methods_http_trace_acceptance_test_suite )

add_executable( custom_http_methods_http_patch_acceptance_test_suite ${SOURCE_DIR}/custom_http_methods/http_patch.cpp )
target_link_libraries( custom_http_methods_http_patch_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_http_methods_http_patch_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_http_methods_http_patch_acceptance_test_suite )

add_executable( custom_http_methods_http_delete_acceptance_test_suite ${SOURCE_DIR}/custom_http_methods/http_delete.cpp )
target_link_libraries( custom_http_methods_http_delete_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_http_methods_http_delete_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_http_methods_http_delete_acceptance_test_suite )

add_executable( custom_http_methods_http_connect_acceptance_test_suite ${SOURCE_DIR}/custom_http_methods/http_connect.cpp )
target_link_libraries( custom_http_methods_http_connect_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_http_methods_http_connect_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_http_methods_http_connect_acceptance_test_suite )

add_executable( custom_http_methods_http_options_acceptance_test_suite ${SOURCE_DIR}/custom_http_methods/http_options.cpp )
target_link_libraries( custom_http_methods_http_options_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_http_methods_http_options_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_http_methods_http_options_acceptance_test_suite )

add_executable( custom_http_methods_http_invoke_acceptance_test_suite ${SOURCE_DIR}/custom_http_methods/http_invoke.cpp )
target_link_libraries( custom_http_methods_http_invoke_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_http_methods_http_invoke_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_http_methods_http_invoke_acceptance_test_suite )

add_executable( http_method_handlers_http_get_acceptance_test_suite ${SOURCE_DIR}/http_method_handlers/http_get.cpp )
target_link_libraries( http_method_handlers_http_get_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_method_handlers_http_get_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_method_handlers_http_get_acceptance_test_suite )

add_executable( http_method_handlers_http_put_acceptance_test_suite ${SOURCE_DIR}/http_method_handlers/http_put.cpp )
target_link_libraries( http_method_handlers_http_put_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_method_handlers_http_put_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_method_handlers_http_put_acceptance_test_suite )

add_executable( http_method_handlers_http_head_acceptance_test_suite ${SOURCE_DIR}/http_method_handlers/http_head.cpp )
target_link_libraries( http_method_handlers_http_head_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_method_handlers_http_head_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_method_handlers_http_head_acceptance_test_suite )

add_executable( http_method_handlers_http_post_acceptance_test_suite ${SOURCE_DIR}/http_method_handlers/http_post.cpp )
target_link_libraries( http_method_handlers_http_post_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_method_handlers_http_post_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_method_handlers_http_post_acceptance_test_suite )

add_executable( http_method_handlers_http_trace_acceptance_test_suite ${SOURCE_DIR}/http_method_handlers/http_trace.cpp )
target_link_libraries( http_method_handlers_http_trace_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_method_handlers_http_trace_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_method_handlers_http_trace_acceptance_test_suite )

add_executable( http_method_handlers_http_patch_acceptance_test_suite ${SOURCE_DIR}/http_method_handlers/http_patch.cpp )
target_link_libraries( http_method_handlers_http_patch_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_method_handlers_http_patch_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_method_handlers_http_patch_acceptance_test_suite )

add_executable( http_method_handlers_http_delete_acceptance_test_suite ${SOURCE_DIR}/http_method_handlers/http_delete.cpp )
target_link_libraries( http_method_handlers_http_delete_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_method_handlers_http_delete_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_method_handlers_http_delete_acceptance_test_suite )

add_executable( http_method_handlers_http_connect_acceptance_test_suite ${SOURCE_DIR}/http_method_handlers/http_connect.cpp )
target_link_libraries( http_method_handlers_http_connect_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_method_handlers_http_connect_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_method_handlers_http_connect_acceptance_test_suite )

add_executable( http_method_handlers_http_options_acceptance_test_suite ${SOURCE_DIR}/http_method_handlers/http_options.cpp )
target_link_libraries( http_method_handlers_http_options_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_method_handlers_http_options_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_method_handlers_http_options_acceptance_test_suite )

add_executable( custom_service_authentication_acceptance_test_suite ${SOURCE_DIR}/custom_authentication/service.cpp )
target_link_libraries( custom_service_authentication_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_service_authentication_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_service_authentication_acceptance_test_suite )

add_executable( custom_resource_authentication_acceptance_test_suite ${SOURCE_DIR}/custom_authentication/resource.cpp )
target_link_libraries( custom_resource_authentication_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_resource_authentication_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_resource_authentication_acceptance_test_suite )

add_executable( custom_failed_service_filter_validation_handler_acceptance_test_suite ${SOURCE_DIR}/custom_failed_resource_filter_validation_handler/service.cpp )
target_link_libraries( custom_failed_service_filter_validation_handler_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_failed_service_filter_validation_handler_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_failed_service_filter_validation_handler_acceptance_test_suite )

add_executable( custom_failed_resource_filter_validation_handler_acceptance_test_suite ${SOURCE_DIR}/custom_failed_resource_filter_validation_handler/resource.cpp )
target_link_libraries( custom_failed_resource_filter_validation_handler_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_failed_resource_filter_validation_handler_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_failed_resource_filter_validation_handler_acceptance_test_suite )

add_executable( custom_method_not_allowed_handler_acceptance_test_suite ${SOURCE_DIR}/custom_method_not_allowed_handler/feature.cpp )
target_link_libraries( custom_method_not_allowed_handler_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_method_not_allowed_handler_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_method_not_allowed_handler_acceptance_test_suite )

add_executable( custom_method_not_implemented_handler_acceptance_test_suite ${SOURCE_DIR}/custom_method_not_implemented_handler/feature.cpp )
target_link_libraries( custom_method_not_implemented_handler_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_method_not_implemented_handler_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_method_not_implemented_handler_acceptance_test_suite )

add_executable( custom_resource_not_found_handler_acceptance_test_suite ${SOURCE_DIR}/custom_resource_not_found_handler/feature.cpp )
target_link_libraries( custom_resource_not_found_handler_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_resource_not_found_handler_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_resource_not_found_handler_acceptance_test_suite )

add_executable( path_parameters_acceptance_test_suite ${SOURCE_DIR}/path_parameters/feature.cpp )
target_link_libraries( path_parameters_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( path_parameters_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/path_parameters_acceptance_test_suite )

add_executable( query_parameters_acceptance_test_suite ${SOURCE_DIR}/query_parameters/feature.cpp )
target_link_libraries( query_parameters_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( query_parameters_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/query_parameters_acceptance_test_suite )

add_executable( resource_method_filters_acceptance_test_suite ${SOURCE_DIR}/resource_method_filters/feature.cpp )
target_link_libraries( resource_method_filters_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( resource_method_filters_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/resource_method_filters_acceptance_test_suite )

add_executable( runtime_service_modifications_acceptance_test_suite ${SOURCE_DIR}/runtime_service_modifications/feature.cpp )
target_link_libraries( runtime_service_modifications_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( runtime_service_modifications_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/runtime_service_modifications_acceptance_test_suite )

add_executable( publish_duplicate_resources_acceptance_test_suite ${SOURCE_DIR}/publish_duplicate_resources/feature.cpp )
target_link_libraries( publish_duplicate_resources_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( publish_duplicate_resources_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/publish_duplicate_resources_acceptance_test_suite )

add_executable( custom_service_error_handling_acceptance_test_suite ${SOURCE_DIR}/custom_error_handling/service.cpp )
target_link_libraries( custom_service_error_handling_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_service_error_handling_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_service_error_handling_acceptance_test_suite )

add_executable( custom_resource_error_handling_acceptance_test_suite ${SOURCE_DIR}/custom_error_handling/resource.cpp )
target_link_libraries( custom_resource_error_handling_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_resource_error_handling_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_resource_error_handling_acceptance_test_suite )

add_executable( case_insensitive_service_acceptance_test_suite ${SOURCE_DIR}/service_case_sensitivity/case_insensitive.cpp )
target_link_libraries( case_insensitive_service_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( case_insensitive_service_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/case_insensitive_service_acceptance_test_suite )

add_executable( service_rules_engine_acceptance_test_suite ${SOURCE_DIR}/rules_engine/service.cpp )
target_link_libraries( service_rules_engine_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( service_rules_engine_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/service_rules_engine_acceptance_test_suite )

add_executable( resource_rules_engine_acceptance_test_suite ${SOURCE_DIR}/rules_engine/resource.cpp )
target_link_libraries( resource_rules_engine_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( resource_rules_engine_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/resource_rules_engine_acceptance_test_suite )

add_executable( mixed_rules_engine_acceptance_test_suite ${SOURCE_DIR}/rules_engine/mixed.cpp )
target_link_libraries( mixed_rules_engine_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( mixed_rules_engine_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/mixed_rules_engine_acceptance_test_suite )

add_executable( http_client_connect_acceptance_test_suite ${SOURCE_DIR}/http_client/connect.cpp )
target_link_libraries( http_client_connect_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_client_connect_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_client_connect_acceptance_test_suite )

add_executable( http_client_fetch_acceptance_test_suite ${SOURCE_DIR}/http_client/fetch.cpp )
target_link_libraries( http_client_fetch_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_client_fetch_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_client_fetch_acceptance_test_suite )

add_executable( http_client_close_acceptance_test_suite ${SOURCE_DIR}/http_client/close.cpp )
target_link_libraries( http_client_close_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_client_close_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_client_close_acceptance_test_suite )

add_executable( http_client_async_acceptance_test_suite ${SOURCE_DIR}/http_client/async.cpp )
target_link_libraries( http_client_async_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_client_async_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_client_async_acceptance_test_suite )

add_executable( http_client_keep_alive_acceptance_test_suite ${SOURCE_DIR}/http_client/keep_alive.cpp )
target_link_libraries( http_client_keep_alive_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( http_client_keep_alive_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/http_client_keep_alive_acceptance_test_suite )

add_executable( custom_status_message_acceptance_test_suite ${SOURCE_DIR}/custom_status_message/feature.cpp )
target_link_libraries( custom_status_message_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( custom_status_message_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/custom_status_message_acceptance_test_suite )

add_executable( signal_handling_acceptance_test_suite ${SOURCE_DIR}/signal_handling/feature.cpp )
target_link_libraries( signal_handling_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( signal_handling_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/signal_handling_acceptance_test_suite )

add_executable( service_connection_timeout_acceptance_test_suite ${SOURCE_DIR}/connection_timeout/server.cpp )
target_link_libraries( service_connection_timeout_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( service_connection_timeout_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/service_connection_timeout_acceptance_test_suite )

add_executable( client_connection_timeout_acceptance_test_suite ${SOURCE_DIR}/connection_timeout/client.cpp )
target_link_libraries( client_connection_timeout_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( client_connection_timeout_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/client_connection_timeout_acceptance_test_suite )

add_executable( service_status_acceptance_test_suite ${SOURCE_DIR}/service_status/feature.cpp )
target_link_libraries( service_status_acceptance_test_suite ${CMAKE_PROJECT_NAME} )
add_test( service_status_acceptance_test_suite ${EXECUTABLE_OUTPUT_PATH}/service_status_acceptance_test_suite )
