Skip to content
Snippets Groups Projects
Commit a9113ae3 authored by Brad King's avatar Brad King Committed by Kitware Robot
Browse files

Merge topic 'autogen_json_fix'

48b56504 Autogen: Fix for Q_PLUGIN_METADATA change detection test
parents e9cfe63d 48b56504
No related branches found
No related tags found
No related merge requests found
......@@ -232,55 +232,56 @@ if (NOT QT_TEST_VERSION STREQUAL 4)
endif()
set(timeformat "%Y%j%H%M%S")
set(mocPluginBinDir "${CMAKE_CURRENT_BINARY_DIR}/mocPlugin")
find_library(style_a_file "PluginStyleA" "${mocPluginBinDir}")
find_library(style_b_file "PluginStyleB" "${mocPluginBinDir}")
find_library(style_c_file "PluginStyleC" "${mocPluginBinDir}")
find_library(style_d_file "PluginStyleD" "${mocPluginBinDir}")
file(TIMESTAMP "${style_a_file}" style_a_before "${timeformat}")
file(TIMESTAMP "${style_b_file}" style_b_before "${timeformat}")
file(TIMESTAMP "${style_c_file}" style_c_before "${timeformat}")
file(TIMESTAMP "${style_d_file}" style_d_before "${timeformat}")
# Ensure that the timestamp will change and touch the json files
set(mocPlugSrcDir "${CMAKE_CURRENT_SOURCE_DIR}/mocPlugin")
set(mocPlugBinDir "${CMAKE_CURRENT_BINARY_DIR}/mocPlugin")
find_library(plAFile "PlugA" PATHS "${mocPlugBinDir}" NO_DEFAULT_PATH)
find_library(plBFile "PlugB" PATHS "${mocPlugBinDir}" NO_DEFAULT_PATH)
find_library(plCFile "PlugC" PATHS "${mocPlugBinDir}" NO_DEFAULT_PATH)
find_library(plDFile "PlugD" PATHS "${mocPlugBinDir}" NO_DEFAULT_PATH)
file(TIMESTAMP "${plAFile}" plABefore "${timeformat}")
file(TIMESTAMP "${plBFile}" plBBefore "${timeformat}")
file(TIMESTAMP "${plCFile}" plCBefore "${timeformat}")
file(TIMESTAMP "${plDFile}" plDBefore "${timeformat}")
# Ensure that the timestamp will change and change the json files
execute_process(COMMAND "${CMAKE_COMMAND}" -E sleep 1)
execute_process(COMMAND "${CMAKE_COMMAND}" -E touch "${mocPluginBinDir}/jsonFiles/StyleC.json")
execute_process(COMMAND "${CMAKE_COMMAND}" -E touch "${mocPluginBinDir}/jsonFiles/sub/StyleD.json")
execute_process(COMMAND "${CMAKE_COMMAND}" --build . WORKING_DIRECTORY "${mocPluginBinDir}")
configure_file("${mocPlugSrcDir}/jsonIn/StyleD.json" "${mocPlugBinDir}/jsonFiles/StyleC.json")
configure_file("${mocPlugSrcDir}/jsonIn/StyleC.json" "${mocPlugBinDir}/jsonFiles/sub/StyleD.json")
execute_process(COMMAND "${CMAKE_COMMAND}" --build . WORKING_DIRECTORY "${mocPlugBinDir}")
file(TIMESTAMP "${style_a_file}" style_a_after "${timeformat}")
file(TIMESTAMP "${style_b_file}" style_b_after "${timeformat}")
file(TIMESTAMP "${style_c_file}" style_c_after "${timeformat}")
file(TIMESTAMP "${style_d_file}" style_d_after "${timeformat}")
file(TIMESTAMP "${plAFile}" plAAfter "${timeformat}")
file(TIMESTAMP "${plBFile}" plBAfter "${timeformat}")
file(TIMESTAMP "${plCFile}" plCAfter "${timeformat}")
file(TIMESTAMP "${plDFile}" plDAfter "${timeformat}")
if (style_a_after GREATER style_a_before)
message(SEND_ERROR "file (${style_a_file}) should not have changed!")
if (plAAfter GREATER plABefore)
message(SEND_ERROR "file (${plAFile}) should not have changed!")
endif()
if (style_b_after GREATER style_b_before)
message(SEND_ERROR "file (${style_b_file}) should not have changed!")
if (plBAfter GREATER plBBefore)
message(SEND_ERROR "file (${plBFile}) should not have changed!")
endif()
if (NOT style_c_after GREATER style_c_before)
message(SEND_ERROR "file (${style_c_file}) should have changed!")
if (NOT plCAfter GREATER plCBefore)
message(SEND_ERROR "file (${plCFile}) should have changed!")
endif()
if (NOT style_d_after GREATER style_d_before)
message(SEND_ERROR "file (${style_d_file}) should have changed!")
if (NOT plDAfter GREATER plDBefore)
message(SEND_ERROR "file (${plDFile}) should have changed!")
endif()
# Test custom macro
file(TIMESTAMP "${style_c_file}" style_c_before "${timeformat}")
file(TIMESTAMP "${style_d_file}" style_d_before "${timeformat}")
file(TIMESTAMP "${plCFile}" plCBefore "${timeformat}")
file(TIMESTAMP "${plDFile}" plDBefore "${timeformat}")
execute_process(COMMAND "${CMAKE_COMMAND}" -E sleep 1)
execute_process(COMMAND "${CMAKE_COMMAND}" -E touch "${mocPluginBinDir}/jsonFiles/StyleC_Custom.json")
execute_process(COMMAND "${CMAKE_COMMAND}" -E touch "${mocPluginBinDir}/jsonFiles/sub/StyleD_Custom.json")
execute_process(COMMAND "${CMAKE_COMMAND}" --build . WORKING_DIRECTORY "${mocPluginBinDir}")
file(TIMESTAMP "${style_c_file}" style_c_after "${timeformat}")
file(TIMESTAMP "${style_d_file}" style_d_after "${timeformat}")
if (NOT style_c_after GREATER style_c_before)
message(SEND_ERROR "file (${style_c_file}) should have changed!")
configure_file("${mocPlugSrcDir}/jsonIn/StyleD.json" "${mocPlugBinDir}/jsonFiles/StyleC_Custom.json")
configure_file("${mocPlugSrcDir}/jsonIn/StyleC.json" "${mocPlugBinDir}/jsonFiles/sub/StyleD_Custom.json")
execute_process(COMMAND "${CMAKE_COMMAND}" --build . WORKING_DIRECTORY "${mocPlugBinDir}")
file(TIMESTAMP "${plCFile}" plCAfter "${timeformat}")
file(TIMESTAMP "${plDFile}" plDAfter "${timeformat}")
if (NOT plCAfter GREATER plCBefore)
message(SEND_ERROR "file (${plCFile}) should have changed!")
endif()
if (NOT style_d_after GREATER style_d_before)
message(SEND_ERROR "file (${style_d_file}) should have changed!")
if (NOT plDAfter GREATER plDBefore)
message(SEND_ERROR "file (${plDFile}) should have changed!")
endif()
endif()
......
......@@ -25,8 +25,8 @@ set(CMAKE_AUTOMOC TRUE)
include_directories("${CMAKE_CURRENT_BINARY_DIR}/jsonFiles")
link_libraries(Qt5::Widgets)
add_library(PluginStyleA MODULE StyleA.cpp)
add_library(PluginStyleB MODULE StyleB.cpp)
add_library(PluginStyleC MODULE StyleC.cpp)
add_library(PluginStyleD MODULE StyleD.cpp)
add_library(PluginStyleE MODULE StyleE.cpp)
add_library(PlugA STATIC StyleA.cpp)
add_library(PlugB STATIC StyleB.cpp)
add_library(PlugC STATIC StyleC.cpp)
add_library(PlugD STATIC StyleD.cpp)
add_library(PlugE STATIC StyleE.cpp)
{ "Keys": [ "Rocket", "StarbusterC" ] }
{ "Keys": [ "Boat", "Ship" ] }
{ "Keys": [ "Rocket", "StarbusterD" ] }
{ "Keys": [ "Bike", "Car" ] }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment