Advance Wayland and KDE package bring-up
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
+196
@@ -0,0 +1,196 @@
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
project(ECMAddTests)
|
||||
|
||||
set(ECM_MODULE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../../modules)
|
||||
set(CMAKE_MODULE_PATH "${ECM_MODULE_DIR}")
|
||||
|
||||
add_library(testhelper STATIC ../testhelper.cpp)
|
||||
target_include_directories(testhelper PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/..")
|
||||
|
||||
# Link to QtCore for WinMain on Windows
|
||||
include(QtVersionOption)
|
||||
find_package(Qt${QT_MAJOR_VERSION}Core REQUIRED)
|
||||
target_link_libraries(testhelper PUBLIC Qt${QT_MAJOR_VERSION}::Core)
|
||||
|
||||
enable_testing()
|
||||
|
||||
include(ECMAddTests)
|
||||
include(../../test_helpers.cmake)
|
||||
|
||||
# clean up to avoid false-positives from check_files.cmake
|
||||
file(REMOVE
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/test1.txt"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/test2.txt"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/test3.txt"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/test4.txt"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/test5.txt"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/test6.txt"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/test7.txt"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/test8.txt"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/test9.txt"
|
||||
)
|
||||
file(REMOVE_RECURSE
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/test1011_dir"
|
||||
)
|
||||
|
||||
set(exp_target_names "test1;test2;test3")
|
||||
set(exp_test_names "test1;test2;test3")
|
||||
ecm_add_tests(
|
||||
test1.cpp
|
||||
test2.cpp
|
||||
test3.cpp
|
||||
LINK_LIBRARIES testhelper
|
||||
TARGET_NAMES_VAR target_names
|
||||
TEST_NAMES_VAR test_names
|
||||
)
|
||||
assert_vars_setequal(target_names exp_target_names)
|
||||
assert_vars_setequal(test_names exp_test_names)
|
||||
# check targets exist
|
||||
get_property(_dummy TARGET test1 PROPERTY TYPE)
|
||||
get_property(_dummy TARGET test2 PROPERTY TYPE)
|
||||
get_property(_dummy TARGET test3 PROPERTY TYPE)
|
||||
# check tests exists
|
||||
get_property(_dummy TEST test1 PROPERTY TIMEOUT)
|
||||
get_property(_dummy TEST test2 PROPERTY TIMEOUT)
|
||||
get_property(_dummy TEST test3 PROPERTY TIMEOUT)
|
||||
get_property(_is_win32 TARGET test1 PROPERTY WIN32_EXECUTABLE)
|
||||
if (_is_win32)
|
||||
message(FATAL_ERROR "test1 is a WIN32 executable when it should not be")
|
||||
endif()
|
||||
get_property(_is_bundle TARGET test1 PROPERTY MACOSX_BUNDLE)
|
||||
if (_is_bundle)
|
||||
message(FATAL_ERROR "test1 is an OS/X bundle when it should not be")
|
||||
endif()
|
||||
get_property(_is_win32 TARGET test2 PROPERTY WIN32_EXECUTABLE)
|
||||
if (_is_win32)
|
||||
message(FATAL_ERROR "test2 is a WIN32 executable when it should not be")
|
||||
endif()
|
||||
get_property(_is_bundle TARGET test2 PROPERTY MACOSX_BUNDLE)
|
||||
if (_is_bundle)
|
||||
message(FATAL_ERROR "test2 is an OS/X bundle when it should not be")
|
||||
endif()
|
||||
|
||||
|
||||
ecm_add_tests(
|
||||
test4.cpp
|
||||
test5.cpp
|
||||
LINK_LIBRARIES testhelper
|
||||
NAME_PREFIX pref_
|
||||
)
|
||||
get_property(_dummy TARGET test4 PROPERTY TYPE)
|
||||
get_property(_dummy TARGET test5 PROPERTY TYPE)
|
||||
get_property(_dummy TEST pref_test4 PROPERTY TIMEOUT)
|
||||
get_property(_dummy TEST pref_test5 PROPERTY TIMEOUT)
|
||||
get_property(_is_win32 TARGET test4 PROPERTY WIN32_EXECUTABLE)
|
||||
if (_is_win32)
|
||||
message(FATAL_ERROR "test4 is a WIN32 executable when it should not be")
|
||||
endif()
|
||||
get_property(_is_bundle TARGET test4 PROPERTY MACOSX_BUNDLE)
|
||||
if (_is_bundle)
|
||||
message(FATAL_ERROR "test4 is an OS/X bundle when it should not be")
|
||||
endif()
|
||||
get_property(_is_win32 TARGET test5 PROPERTY WIN32_EXECUTABLE)
|
||||
if (_is_win32)
|
||||
message(FATAL_ERROR "test5 is a WIN32 executable when it should not be")
|
||||
endif()
|
||||
get_property(_is_bundle TARGET test5 PROPERTY MACOSX_BUNDLE)
|
||||
if (_is_bundle)
|
||||
message(FATAL_ERROR "test5 is an OS/X bundle when it should not be")
|
||||
endif()
|
||||
|
||||
|
||||
ecm_add_tests(
|
||||
test6.cpp
|
||||
test7.cpp
|
||||
LINK_LIBRARIES testhelper
|
||||
GUI
|
||||
)
|
||||
get_property(_dummy TARGET test6 PROPERTY TYPE)
|
||||
get_property(_dummy TARGET test7 PROPERTY TYPE)
|
||||
get_property(_dummy TEST test6 PROPERTY TIMEOUT)
|
||||
get_property(_dummy TEST test7 PROPERTY TIMEOUT)
|
||||
get_property(_is_win32 TARGET test6 PROPERTY WIN32_EXECUTABLE)
|
||||
if (NOT _is_win32)
|
||||
message(FATAL_ERROR "test6 is not a WIN32 executable when it should be")
|
||||
endif()
|
||||
get_property(_is_bundle TARGET test6 PROPERTY MACOSX_BUNDLE)
|
||||
if (NOT _is_bundle)
|
||||
message(FATAL_ERROR "test6 is not an OS/X bundle when it should be")
|
||||
endif()
|
||||
get_property(_is_win32 TARGET test7 PROPERTY WIN32_EXECUTABLE)
|
||||
if (NOT _is_win32)
|
||||
message(FATAL_ERROR "test7 is not a WIN32 executable when it should be")
|
||||
endif()
|
||||
get_property(_is_bundle TARGET test7 PROPERTY MACOSX_BUNDLE)
|
||||
if (NOT _is_bundle)
|
||||
message(FATAL_ERROR "test7 is not an OS/X bundle when it should be")
|
||||
endif()
|
||||
|
||||
|
||||
set(exp_target_names "test8;test9")
|
||||
set(exp_test_names "p_test8;p_test9")
|
||||
ecm_add_tests(
|
||||
test8.cpp
|
||||
test9.cpp
|
||||
LINK_LIBRARIES testhelper
|
||||
NAME_PREFIX p_
|
||||
GUI
|
||||
TARGET_NAMES_VAR target_names
|
||||
TEST_NAMES_VAR test_names
|
||||
)
|
||||
assert_vars_setequal(target_names exp_target_names)
|
||||
assert_vars_setequal(test_names exp_test_names)
|
||||
get_property(_dummy TARGET test8 PROPERTY TYPE)
|
||||
get_property(_dummy TARGET test9 PROPERTY TYPE)
|
||||
get_property(_dummy TEST p_test8 PROPERTY TIMEOUT)
|
||||
get_property(_dummy TEST p_test9 PROPERTY TIMEOUT)
|
||||
get_property(_is_win32 TARGET test8 PROPERTY WIN32_EXECUTABLE)
|
||||
if (NOT _is_win32)
|
||||
message(FATAL_ERROR "test8 is not a WIN32 executable when it should be")
|
||||
endif()
|
||||
get_property(_is_bundle TARGET test8 PROPERTY MACOSX_BUNDLE)
|
||||
if (NOT _is_bundle)
|
||||
message(FATAL_ERROR "test8 is not an OS/X bundle when it should be")
|
||||
endif()
|
||||
get_property(_is_win32 TARGET test9 PROPERTY WIN32_EXECUTABLE)
|
||||
if (NOT _is_win32)
|
||||
message(FATAL_ERROR "test9 is not a WIN32 executable when it should be")
|
||||
endif()
|
||||
get_property(_is_bundle TARGET test9 PROPERTY MACOSX_BUNDLE)
|
||||
if (NOT _is_bundle)
|
||||
message(FATAL_ERROR "test9 is not an OS/X bundle when it should be")
|
||||
endif()
|
||||
|
||||
|
||||
set(exp_workingdir "${CMAKE_CURRENT_BINARY_DIR}/test1011_dir")
|
||||
file(MAKE_DIRECTORY "${exp_workingdir}") # cmake does not create that for us, will complain otherwise
|
||||
ecm_add_tests(
|
||||
test10.cpp
|
||||
test11.cpp
|
||||
LINK_LIBRARIES testhelper
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/test1011_dir"
|
||||
)
|
||||
get_property(_dummy TARGET test10 PROPERTY TYPE)
|
||||
get_property(_dummy TARGET test11 PROPERTY TYPE)
|
||||
get_property(_dummy TEST test10 PROPERTY TIMEOUT)
|
||||
get_property(_dummy TEST test11 PROPERTY TIMEOUT)
|
||||
get_property(_working_dir TEST test10 PROPERTY WORKING_DIRECTORY)
|
||||
assert_vars_setequal(_working_dir exp_workingdir)
|
||||
get_property(_working_dir TEST test11 PROPERTY WORKING_DIRECTORY)
|
||||
assert_vars_setequal(_working_dir exp_workingdir)
|
||||
get_property(_is_win32 TARGET test10 PROPERTY WIN32_EXECUTABLE)
|
||||
if (_is_win32)
|
||||
message(FATAL_ERROR "test10 is a WIN32 executable when it should not be")
|
||||
endif()
|
||||
get_property(_is_bundle TARGET test10 PROPERTY MACOSX_BUNDLE)
|
||||
if (_is_bundle)
|
||||
message(FATAL_ERROR "test10 is an OS/X bundle when it should not be")
|
||||
endif()
|
||||
get_property(_is_win32 TARGET test11 PROPERTY WIN32_EXECUTABLE)
|
||||
if (_is_win32)
|
||||
message(FATAL_ERROR "test11 is a WIN32 executable when it should not be")
|
||||
endif()
|
||||
get_property(_is_bundle TARGET test11 PROPERTY MACOSX_BUNDLE)
|
||||
if (_is_bundle)
|
||||
message(FATAL_ERROR "test11 is an OS/X bundle when it should not be")
|
||||
endif()
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
#include "testhelper.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
make_test_file("test1.txt");
|
||||
return 0;
|
||||
}
|
||||
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
#include "testhelper.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
make_test_file("test10.txt");
|
||||
return 0;
|
||||
}
|
||||
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
#include "testhelper.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
make_test_file("test11.txt");
|
||||
return 0;
|
||||
}
|
||||
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
#include "testhelper.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
make_test_file("test2.txt");
|
||||
return 0;
|
||||
}
|
||||
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
#include "testhelper.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
make_test_file("test3.txt");
|
||||
return 0;
|
||||
}
|
||||
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
#include "testhelper.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
make_test_file("test4.txt");
|
||||
return 0;
|
||||
}
|
||||
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
#include "testhelper.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
make_test_file("test5.txt");
|
||||
return 0;
|
||||
}
|
||||
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
#include "testhelper.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
make_test_file("test6.txt");
|
||||
return 0;
|
||||
}
|
||||
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
#include "testhelper.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
make_test_file("test7.txt");
|
||||
return 0;
|
||||
}
|
||||
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
#include "testhelper.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
make_test_file("test8.txt");
|
||||
return 0;
|
||||
}
|
||||
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
#include "testhelper.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
make_test_file("test9.txt");
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user