]> git.lyx.org Git - features.git/commitdiff
Cmake export tests: More refactoring.
authorKornel Benko <kornel@lyx.org>
Sun, 29 Nov 2015 01:18:07 +0000 (02:18 +0100)
committerKornel Benko <kornel@lyx.org>
Sun, 29 Nov 2015 01:18:07 +0000 (02:18 +0100)
development/autotests/ExportTests.cmake
development/autotests/suspiciousTests

index 3f005a6d8257bdff6443f890ca7adafaeb3c358a..942dd4ec08ea901c568105d3dc1faeb8898d94ad 100644 (file)
@@ -97,64 +97,64 @@ macro(findexpr found testname listname rsublabel)
 endmacro()
 
 function(join rvalues glue routput)
-  string(REGEX REPLACE "([^\\]|^);" "\\1${glue}" out "${${rvalues}}")
+  set(locallist ${${rvalues}})
+  list(REMOVE_ITEM locallist "export" "lyx2lyx" "load")
+  string(REGEX REPLACE "([^\\]|^);" "\\1${glue}" out "${locallist}")
   set(${routput} ${out} PARENT_SCOPE)
 endfunction()
 
 macro(maketestname testname reverted listsuspicious listignored listunreliable listlabels)
-  set(sublabel "")
   string(REGEX MATCH "\\/[a-z][a-z](_[A-Z][A-Z])?\\/" _v ${${testname}})
   if(_v)
     string(REGEX REPLACE "\\/" "" _v ${_v})
     set(listsuspiciousx ${listsuspicious}_${_v})
     set(listignoredx ${listignored}_${_v})
     set(listunreliablex ${listunreliable}_${_v})
+    set(listsuspendedx suspendedTests_${v})
   else()
     set(listsuspiciousx ${listsuspicious})
     set(listignoredx ${listignored})
     set(listunreliablex ${listunreliable})
+    set(listsuspendedx suspendedTests)
   endif()
-  set(sublabel "")
+  set(sublabel "${${listlabels}}")
   findexpr(mfound ${testname} ${listignoredx} sublabel)
   if (NOT mfound)
-    string(REGEX MATCH "_(systemF|texF|pdf3|pdf2|pdf|dvi|lyx16|xhtml)$" _v ${${testname}})
-    # check if test _may_ be in listsuspicious
-    if (_v)
-      findexpr(mfound ${testname} ${listsuspiciousx} sublabel)
+    set(sublabel2 "")
+    findexpr(foundunreliable ${testname} ${listunreliablex} sublabel2)
+    if (foundunreliable)
+      set(sublabel "unreliable" ${sublabel} ${sublabel2})
+      list(REMOVE_ITEM sublabel "export" "reverted" "templates" "mathmacros" "manuals" "autotests")
     else()
-      set(mfound OFF)
-    endif()
-    if (NOT mfound)
-      set(${reverted} 0)
-    else()
-      # Now that the test is suspect,
-      # check if it is unreliable, and/or suspended
+      string(REGEX MATCH "_(systemF|texF|pdf3|pdf2|pdf|dvi|lyx16|xhtml)$" _v ${${testname}})
+      # check if test _may_ be in listsuspicious
       set(sublabel2 "")
-      findexpr(nsfound ${testname} ${listunreliablex} sublabel2)
-      findexpr(nsfound2 ${testname} suspendedTests sublabel2)
-      list(APPEND sublabel ${sublabel2})
-      if (nsfound)
-        set(sublabel "unreliable" ${sublabel})
-      endif()
-      if (nsfound2)
-        set(sublabel "suspended" ${sublabel})
+      if (_v)
+       findexpr(mfound ${testname} ${listsuspiciousx} sublabel2)
+      else()
+       set(mfound OFF)
       endif()
-      list(REMOVE_DUPLICATES sublabel)
-      if (nsfound OR nsfound2)
-        list(APPEND ${listlabels} ${sublabel})
-        set(${reverted} 0)
+      if (mfound)
+       set(sublabel3 "")
+       findexpr(foundsuspended ${testname} ${listsuspendedx} sublabel3)
+       set(${reverted} 1)
+       if (foundsuspended)
+         set(sublabel "reverted" "suspended" ${sublabel} ${sublabel2} ${sublabel3})
+         list(REMOVE_ITEM sublabel "export")
+       else()
+         set(sublabel "reverted" ${sublabel} ${sublabel2} ${sublabel3})
+       endif()
       else()
-        set(sublabel "reverted" ${sublabel})
-        set(${reverted} 1)
+       set(${reverted} 0)
       endif()
+    endif()
+    list(REMOVE_DUPLICATES sublabel)
+    if (NOT sublabel STREQUAL "")
       join(sublabel "." tmpprefixx)
       string(TOUPPER "${tmpprefixx}_" tmpprefix)
       set(${testname} "${tmpprefix}${${testname}}")
       string(TOUPPER "${sublabel}_" tmpprefix)
-      if (NOT sublabel STREQUAL "")
-        list(APPEND ${listlabels} ${sublabel})
-        list(FIND ${listlabels} "chemgreek" _i)
-      endif()
+      set(${listlabels} ${sublabel})
     endif()
   else()
     set(${testname} "")
@@ -237,30 +237,6 @@ loadTestList(ignoredTests ignoredTests)
 loadTestList(suspendedTests suspendedTests)
 loadTestList(unreliableTests unreliableTests)
 
-macro(handlesuspended TestName reverted testlabel)
-  set(mylabel ${${testlabel}})
-  set(myreverted ${reverted})
-  set(sublabel)
-
-  # check for unreliable
-  if ("${TestName}" MATCHES "^UNRELIABLE")
-    list(REMOVE_ITEM mylabel "export" "reverted" "templates" "mathmacros" "manuals")
-    list(APPEND mylabel "unreliable")
-    set(myreverted 0)
-  elseif (${reverted})
-    # check suspension only for reverted tests
-    findexpr(tfound TestName suspendedTests sublabel)
-    if (tfound)
-      set(mylabel "suspended")
-      if (sublabel)
-        list(APPEND mylabel ${sublabel})
-      endif()
-      set(myreverted 0) # if test is to be suspended, remove the 'reverted' flag
-    endif()
-  endif()
-  setmarkedtestlabel(${TestName} ${myreverted} ${mylabel})
-endmacro()
-
 # preparing to add e.g. development/mathmacros to the foreach() loop
 foreach(libsubfolderx autotests/export lib/doc lib/examples lib/templates development/mathmacros)
   set(testlabel "export")
@@ -313,7 +289,7 @@ foreach(libsubfolderx autotests/export lib/doc lib/examples lib/templates develo
         -DTOP_SRC_DIR=${TOP_SRC_DIR}
         -DPERL_EXECUTABLE=${PERL_EXECUTABLE}
         -P "${TOP_SRC_DIR}/development/autotests/export.cmake")
-      handlesuspended(${TestName} ${reverted} mytestlabel) # checking for suspended lyx16 exports
+      setmarkedtestlabel(${TestName} ${reverted} ${mytestlabel})
     endif()
     if(LYX_PYTHON_EXECUTABLE)
       set(lyx2lyxtestlabel "lyx2lyx")
@@ -330,7 +306,7 @@ foreach(libsubfolderx autotests/export lib/doc lib/examples lib/templates develo
           "-DLYX_TESTS_USERDIR=${LYX_TESTS_USERDIR}"
           "-DLYXFILE=${LIBSUB_SRC_DIR}/${f}.lyx"
           -P "${TOP_SRC_DIR}/development/autotests/lyx2lyxtest.cmake")
-        handlesuspended(${TestName} ${reverted} mytestlabel)
+        setmarkedtestlabel(${TestName} ${reverted} ${mytestlabel})
       endif()
     endif()
     set(loadtestlabel "load")
@@ -346,7 +322,7 @@ foreach(libsubfolderx autotests/export lib/doc lib/examples lib/templates develo
         -DPARAMS_DIR=${TOP_SRC_DIR}/development/autotests
         -DWORKDIR=${CMAKE_CURRENT_BINARY_DIR}/${LYX_HOME}
         -P "${TOP_SRC_DIR}/development/autotests/check_load.cmake")
-      handlesuspended(${TestName} ${reverted} mytestlabel)
+      setmarkedtestlabel(${TestName} ${reverted} ${mytestlabel})
       set_tests_properties(${TestName} PROPERTIES RUN_SERIAL ON)
     endif()
     getoutputformats("${LIBSUB_SRC_DIR}/${f}.lyx" formatlist)
@@ -379,7 +355,7 @@ foreach(libsubfolderx autotests/export lib/doc lib/examples lib/templates develo
             -DTOP_SRC_DIR=${TOP_SRC_DIR}
             -DPERL_EXECUTABLE=${PERL_EXECUTABLE}
             -P "${TOP_SRC_DIR}/development/autotests/export.cmake")
-          handlesuspended(${TestName} ${reverted} mytestlabel) # check for suspended pdf/dvi exports
+          setmarkedtestlabel(${TestName} ${reverted} ${mytestlabel}) # check for suspended pdf/dvi exports
         endif()
       endforeach()
     endforeach()
index 5619e40d9cdfeed33bbfc046d9294eede0ad6a4e..5f395bf55dc2383b7b022d97091fb6e1e441b066 100644 (file)
@@ -218,7 +218,4 @@ export/mathmacros/testcases_master_child_.*
 export/mathmacros/testcases_speed_(dvi|pdf|pdf[23]|(dvi3|pdf[45])_(texF|systemF))
 
 # Language nesting, document is OK, fails because of a bug in LyX
-export/export/languagenesting1_dvi
-export/export/languagenesting1_pdf
-export/export/languagenesting1_pdf2
-export/export/languagenesting1_pdf3
+export/export/languagenesting1_(dvi|pdf(|[23]))