@@ -30,6 +30,7 @@ option(MRDOCS_PACKAGE "Build install package" ON)
3030option (MRDOCS_BUILD_SHARED "Link shared" ${BUILD_SHARED_LIBS} )
3131option (MRDOCS_BUILD_TESTS "Build tests" ${BUILD_TESTING} )
3232option (MRDOCS_BUILD_STRICT_TESTS "Enable strict tests" ON )
33+ option (MRDOCS_EXPENSIVE_TESTS "Register expensive tests (adoc/html golden, self-doc)" ON )
3334option (MRDOCS_REQUIRE_GIT "Git is required: not being able to extract version build is an error" ON )
3435if (MRDOCS_BUILD_TESTS OR MRDOCS_INSTALL)
3536 option (MRDOCS_BUILD_DOCS "Build documentation" ON )
@@ -480,7 +481,8 @@ if (MRDOCS_BUILD_TESTS)
480481 target_compile_definitions (mrdocs-test PRIVATE -DMRDOCS_TEST_FILES_DIR= "${CMAKE_CURRENT_SOURCE_DIR} /test-files" )
481482 add_test (NAME mrdocs-unit-tests COMMAND mrdocs-test --unit=true )
482483 foreach (testgenerator IN ITEMS xml adoc html)
483- add_test (NAME mrdocs-golden-tests-${testgenerator}
484+ if (MRDOCS_EXPENSIVE_TESTS OR testgenerator STREQUAL "xml" )
485+ add_test (NAME mrdocs-golden-tests-${testgenerator}
484486 COMMAND
485487 mrdocs-test
486488 --unit=false
@@ -492,6 +494,7 @@ if (MRDOCS_BUILD_TESTS)
492494 "--libc-includes=${CMAKE_SOURCE_DIR} /share/mrdocs/headers/libc-stubs"
493495 --log-level=warn
494496 )
497+ endif ()
495498 foreach (action IN ITEMS test create update)
496499 add_custom_target (
497500 mrdocs-${action}-test-fixtures-${testgenerator}
@@ -519,28 +522,30 @@ if (MRDOCS_BUILD_TESTS)
519522 endforeach ()
520523
521524 #-------------------------------------------------
522- # Self-documentation test (always run; warn-as-error toggled by strict flag)
525+ # Self-documentation test (warn-as-error toggled by strict flag)
523526 #-------------------------------------------------
524527 set (MRDOCS_SELF_DOC_OUTPUT "${CMAKE_BINARY_DIR} /docs/self-reference" )
525528 set (MRDOCS_SELF_DOC_TAGFILE "${MRDOCS_SELF_DOC_OUTPUT} /reference.tag.xml" )
526529
527- add_test (NAME mrdocs-self-doc
528- COMMAND
529- mrdocs
530- "${CMAKE_SOURCE_DIR} /CMakeLists.txt"
531- "--config=${CMAKE_SOURCE_DIR} /docs/mrdocs.yml"
532- "--output=${MRDOCS_SELF_DOC_OUTPUT} "
533- --generator=adoc
534- "--addons=${CMAKE_SOURCE_DIR} /share/mrdocs/addons"
535- "--stdlib-includes=${LIBCXX_DIR} "
536- "--stdlib-includes=${STDLIB_INCLUDE_DIR} "
537- "--libc-includes=${CMAKE_SOURCE_DIR} /share/mrdocs/headers/libc-stubs"
538- "--tagfile=${MRDOCS_SELF_DOC_TAGFILE} "
539- --multipage=true
540- --concurrency=16
541- --log-level=debug
542- $<$<BOOL :${MRDOCS_BUILD_STRICT_TESTS} >:--warn -as -error =true >
543- )
530+ if (MRDOCS_EXPENSIVE_TESTS)
531+ add_test (NAME mrdocs-self-doc
532+ COMMAND
533+ mrdocs
534+ "${CMAKE_SOURCE_DIR} /CMakeLists.txt"
535+ "--config=${CMAKE_SOURCE_DIR} /docs/mrdocs.yml"
536+ "--output=${MRDOCS_SELF_DOC_OUTPUT} "
537+ --generator=adoc
538+ "--addons=${CMAKE_SOURCE_DIR} /share/mrdocs/addons"
539+ "--stdlib-includes=${LIBCXX_DIR} "
540+ "--stdlib-includes=${STDLIB_INCLUDE_DIR} "
541+ "--libc-includes=${CMAKE_SOURCE_DIR} /share/mrdocs/headers/libc-stubs"
542+ "--tagfile=${MRDOCS_SELF_DOC_TAGFILE} "
543+ --multipage=true
544+ --concurrency=16
545+ --log-level=debug
546+ $<$<BOOL :${MRDOCS_BUILD_STRICT_TESTS} >:--warn -as -error =true >
547+ )
548+ endif ()
544549
545550 #-------------------------------------------------
546551 # XML lint
0 commit comments