mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-25 19:07:45 +00:00
Cmake export tests
Some export test are known to fail. Checking them every time is cumbersome. Now, the tests marked in file revertedTests will invert the success condition and mark the test as INVERTED_SEE-README.ctest. If some of the tests in revertedTests fails, this is good, and the testname can be removed from it.
This commit is contained in:
parent
efe2c681b5
commit
8ac070afb0
@ -115,6 +115,16 @@ macro(getoutputformats filepath varname)
|
||||
endforeach()
|
||||
endmacro()
|
||||
|
||||
macro(getreverted testname reverted listreverted)
|
||||
list(FIND ${listreverted} ${${testname}} _idx)
|
||||
if (${_idx} LESS 0)
|
||||
set(${reverted} 0)
|
||||
else()
|
||||
set(${reverted} 1)
|
||||
set(${testname} "INVERTED_SEE-README.ctest_${${testname}}")
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
foreach(libsubfolder doc examples templates)
|
||||
set(LIBSUB_SRC_DIR "${TOP_SRC_DIR}/lib/${libsubfolder}")
|
||||
file(GLOB_RECURSE lyx_files RELATIVE "${LIBSUB_SRC_DIR}" "${LIBSUB_SRC_DIR}/*.lyx")
|
||||
@ -130,10 +140,13 @@ foreach(libsubfolder doc examples templates)
|
||||
list(APPEND nolang_lyx_files ${f})
|
||||
endif()
|
||||
endforeach()
|
||||
file(STRINGS "${CMAKE_CURRENT_SOURCE_DIR}/revertedTests" revertedTests)
|
||||
foreach(f ${nolang_lyx_files} ${lang_lyx_files})
|
||||
# Strip extension
|
||||
string(REGEX REPLACE "\\.lyx$" "" f ${f})
|
||||
add_test(NAME export/${libsubfolder}/${f}_lyx16
|
||||
set(TestName "export/${libsubfolder}/${f}_lyx16")
|
||||
getreverted(TestName reverted revertedTests)
|
||||
add_test(NAME ${TestName}
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/${LYX_HOME}"
|
||||
COMMAND ${CMAKE_COMMAND} -DLYX_ROOT=${LIBSUB_SRC_DIR}
|
||||
-Dlyx=$<TARGET_FILE:${_lyx}>
|
||||
@ -141,16 +154,21 @@ foreach(libsubfolder doc examples templates)
|
||||
-Dformat=lyx16x
|
||||
-Dextension=16.lyx
|
||||
-Dfile=${f}
|
||||
-Dreverted=${reverted}
|
||||
-P "${TOP_SRC_DIR}/development/autotests/export.cmake")
|
||||
getoutputformats("${LIBSUB_SRC_DIR}/${f}.lyx" formatlist)
|
||||
foreach(format ${formatlist})
|
||||
add_test(NAME export/${libsubfolder}/${f}_${format}
|
||||
set(TestName "export/${libsubfolder}/${f}_${format}")
|
||||
getreverted(TestName reverted revertedTests)
|
||||
add_test(NAME ${TestName}
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/${LYX_HOME}"
|
||||
COMMAND ${CMAKE_COMMAND} -DLYX_ROOT=${LIBSUB_SRC_DIR}
|
||||
-Dlyx=$<TARGET_FILE:${_lyx}>
|
||||
-DWORKDIR=${CMAKE_CURRENT_BINARY_DIR}/${LYX_HOME}
|
||||
-Dformat=${format}
|
||||
-Dextension=${format}
|
||||
-Dfile=${f}
|
||||
-Dreverted=${reverted}
|
||||
-P "${TOP_SRC_DIR}/development/autotests/export.cmake")
|
||||
endforeach()
|
||||
endforeach()
|
||||
|
@ -17,6 +17,7 @@
|
||||
# -Dformat=xxx \
|
||||
# -Dextension=xxx \
|
||||
# -Dfile=xxx \
|
||||
# -Dreverted=[01] \
|
||||
# -P "${TOP_SRC_DIR}/development/autotests/export.cmake"
|
||||
#
|
||||
|
||||
@ -26,7 +27,11 @@ execute_process(COMMAND ${CMAKE_COMMAND} -E remove ${file}.${extension})
|
||||
execute_process(
|
||||
COMMAND ${lyx} -E ${format} ${file}.${extension} "${LYX_ROOT}/${file}.lyx"
|
||||
RESULT_VARIABLE _err)
|
||||
string(COMPARE NOTEQUAL ${_err} 0 _erg)
|
||||
if(reverted)
|
||||
string(COMPARE EQUAL ${_err} 0 _erg)
|
||||
else()
|
||||
string(COMPARE NOTEQUAL ${_err} 0 _erg)
|
||||
endif()
|
||||
if(_erg)
|
||||
message(STATUS "Exporting ${f}.lyx to ${format}")
|
||||
message(FATAL_ERROR "Export failed")
|
||||
|
48
development/autotests/revertedTests
Normal file
48
development/autotests/revertedTests
Normal file
@ -0,0 +1,48 @@
|
||||
export/doc/he/Intro_pdf
|
||||
export/doc/he/Intro_pdf2
|
||||
export/doc/he/Intro_pdf5
|
||||
export/doc/he/Tutorial_pdf
|
||||
export/doc/he/Tutorial_pdf2
|
||||
export/doc/he/Tutorial_pdf5
|
||||
export/doc/hu/Intro_pdf5
|
||||
export/doc/id/Intro_pdf5
|
||||
export/doc/id/Shortcuts_pdf5
|
||||
export/doc/id/Tutorial_pdf5
|
||||
export/doc/id/UserGuide_pdf5
|
||||
export/doc/ja/Additional_pdf3
|
||||
export/doc/ja/Customization_pdf3
|
||||
export/doc/ja/EmbeddedObjects_pdf
|
||||
export/doc/ja/EmbeddedObjects_pdf2
|
||||
export/doc/ja/EmbeddedObjects_pdf5
|
||||
export/doc/ja/Intro_pdf3
|
||||
export/doc/ja/Tutorial_pdf3
|
||||
export/doc/ja/UserGuide_pdf
|
||||
export/doc/ja/UserGuide_pdf2
|
||||
export/doc/ja/UserGuide_pdf5
|
||||
export/doc/zh_CN/Intro_pdf5
|
||||
export/doc/zh_CN/Tutorial_pdf5
|
||||
export/examples/Literate_pdf
|
||||
export/examples/Literate_pdf2
|
||||
export/examples/Literate_pdf5
|
||||
export/examples/aa_sample_pdf
|
||||
export/examples/aa_sample_pdf2
|
||||
export/examples/aa_sample_pdf5
|
||||
export/examples/listerrors_pdf
|
||||
export/examples/noweb2lyx_pdf
|
||||
export/examples/noweb2lyx_pdf2
|
||||
export/examples/noweb2lyx_pdf5
|
||||
export/examples/es/europeCV_pdf5
|
||||
export/examples/fa/splash_pdf5
|
||||
export/examples/he/example_lyxified_pdf
|
||||
export/examples/he/example_lyxified_pdf2
|
||||
export/examples/he/example_lyxified_pdf5
|
||||
export/examples/he/example_raw_pdf
|
||||
export/examples/he/example_raw_pdf2
|
||||
export/examples/he/example_raw_pdf5
|
||||
export/examples/he/splash_pdf
|
||||
export/examples/he/splash_pdf2
|
||||
export/examples/he/splash_pdf5
|
||||
export/examples/hu/example_lyxified_pdf5
|
||||
export/examples/hu/example_raw_pdf5
|
||||
export/examples/hu/splash_pdf5
|
||||
export/examples/id/splash_pdf5
|
Loading…
Reference in New Issue
Block a user