]> git.lyx.org Git - lyx.git/blobdiff - development/autotests/ExportTests.cmake
DocBook: MissingEndLayoutBetweenTables can't pass.
[lyx.git] / development / autotests / ExportTests.cmake
index b913e3c92283f3ff3dd2a0fb06f1054fd69aad2a..26a1267f9e4ded13ca888fb991ec0c314c0fe24d 100644 (file)
 
 find_package(Perl)
 find_program(XMLLINT_EXECUTABLE xmllint)
+find_program(JAVA_EXECUTABLE java)
+set(jingjava)
+if (JAVA_EXECUTABLE)
+  if (EXISTS "${TOP_SRC_DIR}/development/tools/jing.jar")
+    set(jingjava ${JAVA_EXECUTABLE})
+  endif()
+endif()
 
 if(PERL_FOUND)
   set(DVI_FORMATS "dvi" "dvi3")
@@ -52,20 +59,22 @@ macro(getoutputformats filepath varname format_set)
   file(STRINGS "${filepath}" lines)
   # What should we test, if default_output_format is not defined?
   # For now we test everything ...
-  set(out_formats "xhtml" ${DVI_FORMATS} ${PDF_FORMATS})
-  foreach(_l ${lines})
+  set(out_formats "xhtml" "docbook5" ${DVI_FORMATS} ${PDF_FORMATS})
+  foreach(_l IN LISTS lines)
     if(_l MATCHES "^\\\\default_output_format +\([^ ]+\)")
       set(_format ${CMAKE_MATCH_1})
       if(_format STREQUAL "default")
-        set(out_formats "xhtml" ${DVI_FORMATS} ${PDF_FORMATS})
+        set(out_formats "xhtml" "docbook5" ${DVI_FORMATS} ${PDF_FORMATS})
       else()
         set(${format_set} ${_format})
         if(_format STREQUAL "pdf2" AND "${filepath}" MATCHES "/doc/")
-          set(out_formats "xhtml" ${DVI_FORMATS} ${PDF_FORMATS})
+          set(out_formats "xhtml" "docbook5" ${DVI_FORMATS} ${PDF_FORMATS})
         elseif(_format MATCHES "pdf$")
-          set(out_formats "xhtml" ${PDF_FORMATS})
+          set(out_formats "xhtml" "docbook5" ${PDF_FORMATS})
         elseif(_format MATCHES "dvi$")
-          set(out_formats "xhtml" ${DVI_FORMATS})
+          set(out_formats "xhtml" "docbook5" ${DVI_FORMATS})
+        elseif(_format MATCHES "docbook5")
+          set(out_formats "docbook5")
         elseif(_format MATCHES "xhtml")
           set(out_formats "xhtml")
         else()
@@ -155,7 +164,7 @@ macro(maketestname testname inverted listinverted listignored listunreliable lis
     findexpr(foundunreliable ${testname} ${listunreliablex} sublabel2)
     if (foundunreliable)
       set(sublabel "unreliable" ${sublabel} ${sublabel2})
-      list(REMOVE_ITEM sublabel "export" "inverted" "templates" "mathmacros" "manuals" "autotests")
+      list(REMOVE_ITEM sublabel "export" "inverted" "templates" "tabletemplates" "mathmacros" "manuals" "autotests")
     endif()
     string(REGEX MATCH "(^check_load|_(systemF|texF|pdf3|pdf2|pdf|dvi|lyx[0-9][0-9]|xhtml)$)" _v ${${testname}})
     # check if test _may_ be in listinverted
@@ -287,7 +296,7 @@ endmacro()
 assignLabelDepth(0 "export" "key" "layout" "load" "lyx2lyx" "module" "roundtrip" "url")
 assignLabelDepth(1 "unreliable" "inverted")
 assignLabelDepth(2 "suspended")
-assignLabelDepth(-1 "examples" "manuals" "mathmacros" "templates" "autotests")
+assignLabelDepth(-1 "examples" "manuals" "mathmacros" "templates" "tabletemplates" "autotests")
 
 loadTestList(invertedTests invertedTests 7 ON)
 loadTestList(ignoredTests ignoredTests 0 ON)
@@ -295,7 +304,7 @@ loadTestList(suspendedTests suspendedTests 6 ON)
 loadTestList(unreliableTests unreliableTests 5 ON)
 loadTestList(ignoreLatexErrorsTests ignoreLatexErrorsTests 8 OFF)
 
-foreach(libsubfolderx autotests/export lib/doc lib/examples lib/templates autotests/mathmacros)
+foreach(libsubfolderx autotests/export lib/doc lib/examples lib/templates lib/tabletemplates autotests/mathmacros)
   set(testlabel "export")
   if (libsubfolderx MATCHES "lib/doc")
     list(APPEND testlabel "manuals")
@@ -303,6 +312,8 @@ foreach(libsubfolderx autotests/export lib/doc lib/examples lib/templates autote
     list(APPEND testlabel "examples")
   elseif (libsubfolderx MATCHES "lib/templates")
     list(APPEND testlabel "templates")
+  elseif (libsubfolderx MATCHES "lib/tabletemplates")
+    list(APPEND testlabel "tabletemplates")
   elseif (libsubfolderx MATCHES "autotests/mathmacros")
     list(APPEND testlabel "mathmacros")
   elseif (libsubfolderx MATCHES "autotests/.+")
@@ -442,7 +453,7 @@ foreach(libsubfolderx autotests/export lib/doc lib/examples lib/templates autote
             set(extraLabels )
           endif()
           set(missingLabels )
-          findexpr(mfound TestName ignoreLatexErrorsTests missingLabels)
+          findexpr(mfound TestName1 ignoreLatexErrorsTests missingLabels)
           if (mfound)
             set(mytestlabel ${testlabel} "ignoring" ${missingLabels} ${extraLabels})
           else()
@@ -450,6 +461,11 @@ foreach(libsubfolderx autotests/export lib/doc lib/examples lib/templates autote
           endif()
           string(REGEX REPLACE "[\\(\\)]" "_" TestName "${TestName1}")
           maketestname(TestName inverted invertedTests ignoredTests unreliableTests mytestlabel)
+         if (format MATCHES "docbook5")
+           set(f_extension "xml")
+         else()
+           set(f_extension ${format})
+         endif()
           if(TestName)
             add_test(NAME ${TestName}
               WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/${LYX_HOME}"
@@ -459,13 +475,14 @@ foreach(libsubfolderx autotests/export lib/doc lib/examples lib/templates autote
               -DWORKDIR=${CMAKE_CURRENT_BINARY_DIR}/${LYX_HOME}
               -Dformat=${format}
               -Dfonttype=${fonttype}
-              -Dextension=${format}
+              -Dextension=${f_extension}
               -Dfile=${f}
               -Dinverted=${inverted}
               -DTOP_SRC_DIR=${TOP_SRC_DIR}
               "-DIgnoreErrorMessage=${missingLabels}"
               -DPERL_EXECUTABLE=${PERL_EXECUTABLE}
               -DXMLLINT_EXECUTABLE=${XMLLINT_EXECUTABLE}
+              -DJAVA_EXECUTABLE=${jingjava}
               -DENCODING=${_enc2}
               -P "${TOP_SRC_DIR}/development/autotests/export.cmake")
             setmarkedtestlabel(${TestName} ${mytestlabel}) # check for suspended pdf/dvi exports