set(FUZZER_NAME TestFuzzChannelRdpgfx)

include(AddFuzzerTest)
add_fuzzer_test(${FUZZER_NAME} "winpr freerdp freerdp-client")

if(BUILD_TESTING)
  set(MODULE_NAME "TestChannelRdpgfx")
  set(MODULE_PREFIX "TEST_CHANNEL_RDPGFX")

  disable_warnings_for_directory(${CMAKE_CURRENT_BINARY_DIR})

  set(${MODULE_PREFIX}_TESTS TestRdpgfxStats.c)

  create_test_sourcelist(${MODULE_PREFIX}_SRCS ${MODULE_NAME}.c ${${MODULE_PREFIX}_TESTS})

  add_executable(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS})

  target_link_libraries(${MODULE_NAME} PRIVATE freerdp-client freerdp winpr)

  set_target_properties(${MODULE_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${TESTING_OUTPUT_DIRECTORY}")

  foreach(test ${${MODULE_PREFIX}_TESTS})
    get_filename_component(TestName ${test} NAME_WE)
    add_test(NAME ${TestName} COMMAND ${MODULE_NAME} ${TestName})
  endforeach()

  set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "FreeRDP/Channels/Rdpgfx/Test")
endif()
