enable_testing()

include_directories(
        . ${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/src/fmtlib
        ${CMAKE_CURRENT_BINARY_DIR}/../src ${CMAKE_CURRENT_BINARY_DIR})

add_executable(test_abbrev test_abbrev.cc test_stubs.cc)
target_link_libraries(test_abbrev diag)
add_test(NAME test_abbrev COMMAND test_abbrev)

add_executable(test_ansi_scrubber test_ansi_scrubber.cc test_stubs.cc)
target_link_libraries(test_ansi_scrubber diag)
add_test(NAME test_ansi_scrubber COMMAND test_ansi_scrubber)

add_executable(test_auto_fd test_auto_fd.cc test_stubs.cc)
target_link_libraries(test_auto_fd diag)
add_test(NAME test_auto_fd COMMAND test_auto_fd)

add_executable(test_auto_mem test_auto_mem.cc test_stubs.cc)
target_link_libraries(test_auto_mem diag)
add_test(NAME test_auto_mem COMMAND test_auto_mem)

add_executable(test_bookmarks test_bookmarks.cc test_stubs.cc)
target_link_libraries(test_bookmarks diag)
add_test(NAME test_bookmarks COMMAND test_bookmarks)

add_executable(test_date_time_scanner test_date_time_scanner.cc)
target_link_libraries(test_date_time_scanner base lnavdt)
add_test(NAME test_date_time_scanner COMMAND test_date_time_scanner)

add_executable(test_grep_proc2 test_grep_proc2.cc)
target_link_libraries(test_grep_proc2 lnavfileio)
add_test(NAME test_grep_proc2 COMMAND test_grep_proc2)

add_executable(test_line_buffer2 test_line_buffer2.cc)
target_link_libraries(test_line_buffer2 lnavfileio)
add_test(NAME test_line_buffer2 COMMAND test_line_buffer2)

add_executable(test_log_accel test_log_accel.cc test_stubs.cc)
target_link_libraries(test_log_accel diag)
add_test(NAME test_log_accel COMMAND test_log_accel)

add_executable(lnav_doctests lnav_doctests.cc test_stubs.cc)
target_include_directories(lnav_doctests PUBLIC ../src/third-party/doctest-root)
target_link_libraries(lnav_doctests diag ${lnav_LIBS})
add_test(NAME lnav_doctests COMMAND lnav_doctests)

add_executable(test_reltime test_reltime.cc test_stubs.cc)
target_include_directories(test_reltime PUBLIC ../src/third-party/doctest-root)
target_link_libraries(test_reltime diag)
add_test(NAME test_reltime COMMAND test_reltime)

add_executable(test_top_status test_top_status.cc test_stubs.cc)
target_link_libraries(test_top_status diag logfmt)
add_test(NAME test_top_status COMMAND test_top_status)

add_executable(drive_view_colors drive_view_colors.cc test_stubs.cc)
target_link_libraries(drive_view_colors diag)

add_executable(drive_vt52_curses drive_vt52_curses.cc test_stubs.cc)
target_link_libraries(drive_vt52_curses diag)

add_executable(drive_logfile drive_logfile.cc test_stubs.cc)
target_link_libraries(drive_logfile diag)

add_executable(drive_sql_anno drive_sql_anno.cc test_stubs.cc)
target_link_libraries(drive_sql_anno diag)

add_executable(drive_data_scanner drive_data_scanner.cc test_stubs.cc)
target_link_libraries(drive_data_scanner diag logfmt)

add_executable(scripty scripty.cc test_stubs.cc)
target_link_libraries(scripty diag)
