1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
# Find the GhostScript executable for GL2PS tests.
find_program(VTK_GHOSTSCRIPT_EXECUTABLE gs gswin32c gsos2)
mark_as_advanced(VTK_GHOSTSCRIPT_EXECUTABLE)
# Like the above, but only tests PDF (instead of always PS and maybe PDF).
function(vtk_add_pdf_test_cxx)
set(tests ${ARGN})
foreach(test ${tests})
string(REGEX REPLACE ",.*" "" testsrc "${test}")
get_filename_component(TName ${testsrc} NAME_WE)
# Convert pdf to png
add_test(NAME ${_vtk_build_test}Cxx-${TName}-RasterizePDFToPNG
COMMAND ${CMAKE_COMMAND}
"-DPDFFILE=${_vtk_build_TEST_OUTPUT_DIRECTORY}/${TName}.pdf"
"-DPDFPNGFILE=${_vtk_build_TEST_OUTPUT_DIRECTORY}/${TName}-rasterPDF.png"
"-DGS_EXECUTABLE=${VTK_GHOSTSCRIPT_EXECUTABLE}"
-DREMOVEPDF=1
-DRASTERIZE_PDF=1
-P "${vtkTestingPDF_SOURCE_DIR}/RasterizePostScript.cmake"
)
set_tests_properties("${_vtk_build_test}Cxx-${TName}-RasterizePDFToPNG"
PROPERTIES
DEPENDS "${_vtk_build_test}Cxx-${TName}"
REQUIRED_FILES
"${_vtk_build_TEST_OUTPUT_DIRECTORY}/${TName}.pdf"
LABELS "${_vtk_build_test_labels}"
)
get_filename_component(TName ${test} NAME_WE)
if(${${TName}Error})
set(_error_threshold ${${TName}Error})
else()
set(_error_threshold 15)
endif()
# Image diff rasterized png produced from a PS with baseline
ExternalData_add_test(VTKData
NAME ${_vtk_build_test}Cxx-${TName}-VerifyRasterizedPDFPNG
COMMAND "vtkRenderingGL2PSOpenGL2CxxTests" PNGCompare
-D "${_vtk_build_TEST_OUTPUT_DATA_DIRECTORY}"
-T "${_vtk_build_TEST_OUTPUT_DIRECTORY}"
-E "${_error_threshold}"
-V "DATA{../Data/Baseline/${TName}-rasterPDFRef.png,:}"
--test-file "${_vtk_build_TEST_OUTPUT_DIRECTORY}/${TName}-rasterPDF.png"
)
set_tests_properties("${_vtk_build_test}Cxx-${TName}-VerifyRasterizedPDFPNG"
PROPERTIES
DEPENDS "${_vtk_build_test}Cxx-${TName}-RasterizePDFToPNG"
REQUIRED_FILES
"${_vtk_build_TEST_OUTPUT_DIRECTORY}/${TName}-rasterPDF.png"
LABELS "${_vtk_build_test_labels}"
)
endforeach()
endfunction()
set(vtkTestingPDF_SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}")
|