summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Wicking <paul.wicking@qt.io>2024-01-30 12:35:38 +0100
committerPaul Wicking <paul.wicking@qt.io>2024-01-31 11:04:56 +0100
commitf865bfa6f87d86cdcc8976106798ca35d102f0d7 (patch)
tree3e52dbbb4f53330952263ab9183c1fd4b7fbe762
parent97e2d00e817e7382906176c793185c2995972d92 (diff)
QDoc: Move `outputfromqdocfiles` test project
This change moves the `outputfromqdocfiles` test project from QDoc's `tst_generatedOutput` to `tst_validateQdocOutputFiles`. The latter is a data-driven test and better suited for the type of test performed with this documentation project. This move is more invasive than those that precede it, in that the test project is subject to several test cases in `tst_generatedOutput`, that serve multiple purposes. Of particular interest is how the test project exercises QDoc's `if(defined)` directive. To achieve test coverage parity, while at the same time simplify the test project structure, part of the test is duplicated, and the configuration files for both resulting cases are consolidated. In addition; - Merge output format specific configuration from multiple .qdocconf files and set their `outputsubdir` such that it aligns with the pattern in other test projects. - Also move the expected output files from `tst_generatedOutput`. - Remove the cases for all involved configurations in `tst_generatedoutput.cpp`. Task-number: QTBUG-119500 Change-Id: I7868f1935b90f10312671db95c03fffe24c13e75 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
-rw-r--r--src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/docbook_test.qdocconf30
-rw-r--r--src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/docbookext_test.qdocconf27
-rw-r--r--src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/tocbreadcrumbs.qdocconf9
-rw-r--r--src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/tocnavigation.qdocconf22
-rw-r--r--src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/webxml_test.qdocconf17
-rw-r--r--src/qdoc/qdoc/tests/generatedoutput/tst_generatedoutput.cpp63
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/crash.xml12
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/images/01.pngbin0 -> 1142 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/images/leonardo-da-vinci.pngbin0 -> 15076 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/qdoctests-qdocfileoutput-exhaustive.xml (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/docbookext/qdoctests-qdocfileoutput-exhaustive.xml)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/qdoctests-qdocfileoutput-linking.xml (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/docbookext/qdoctests-qdocfileoutput-linking.xml)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/qdoctests-qdocfileoutput.xml (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/docbookext/qdoctests-qdocfileoutput.xml)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/qdoctests-qdocmanuallikefileoutput.xml (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/docbookext/qdoctests-qdocmanuallikefileoutput.xml)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/toc.xml23
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/crash.html16
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/images/01.pngbin0 -> 1142 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/images/leonardo-da-vinci.pngbin0 -> 15076 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/outputfromqdocfiles.index33
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/qdoctests-qdocfileoutput-exhaustive.html (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/qdoctests-qdocfileoutput-exhaustive.html)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/qdoctests-qdocfileoutput-linking.html (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/qdoctests-qdocfileoutput-linking.html)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/qdoctests-qdocfileoutput.html (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/qdoctests-qdocfileoutput.html)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/qdoctests-qdocmanuallikefileoutput.html (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/qdoctests-qdocmanuallikefileoutput.html)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/toc.html (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/toc.html)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/crash.webxml10
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/images/01.pngbin0 -> 1142 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/images/leonardo-da-vinci.pngbin0 -> 15076 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/outputfromqdocfiles.index33
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/qdoctests-qdocfileoutput-exhaustive.webxml (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/html/qdoctests-qdocfileoutput-exhaustive.webxml)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/qdoctests-qdocfileoutput-linking.webxml (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/html/qdoctests-qdocfileoutput-linking.webxml)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/qdoctests-qdocfileoutput.webxml (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/html/qdoctests-qdocfileoutput.webxml)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/qdoctests-qdocmanuallikefileoutput.webxml (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/html/qdoctests-qdocmanuallikefileoutput.webxml)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/toc.webxml24
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/images/01.pngbin0 -> 1142 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/images/leonardo-da-vinci.pngbin0 -> 15076 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/outputfromqdocfiles.qdocconf (renamed from src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/test.qdocconf)20
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/qdoctests-outputfromqdocfiles.qdoc (renamed from src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/qdoctests-outputfromqdocfiles.qdoc)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/qdoctests-outputfromqdocmanuallikefiles.qdoc (renamed from src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/qdoctests-outputfromqdocmanuallikefiles.qdoc)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/snippets/main.cpp (renamed from src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/snippets/main.cpp)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/crash.xml14
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/images/01.pngbin0 -> 1142 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/images/leonardo-da-vinci.pngbin0 -> 15076 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/qdoctests-qdocfileoutput-exhaustive.xml (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/docbook/qdoctests-qdocfileoutput-exhaustive.xml)10
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/qdoctests-qdocfileoutput-linking.xml (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/docbook/qdoctests-qdocfileoutput-linking.xml)6
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/qdoctests-qdocfileoutput.xml (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/docbook/qdoctests-qdocfileoutput.xml)4
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/qdoctests-qdocmanuallikefileoutput.xml (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/docbook/qdoctests-qdocmanuallikefileoutput.xml)4
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/toc-test.xml40
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/toc.xml23
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/crash.html26
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/images/01.pngbin0 -> 1142 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/images/leonardo-da-vinci.pngbin0 -> 15076 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/outputfromqdocfiles.index34
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/qdoctests-qdocfileoutput-exhaustive.html (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/tocbreadcrumbs/qdoctests-qdocfileoutput-exhaustive.html)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/qdoctests-qdocfileoutput-linking.html (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/tocbreadcrumbs/qdoctests-qdocfileoutput-linking.html)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/qdoctests-qdocfileoutput.html (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/tocbreadcrumbs/qdoctests-qdocfileoutput.html)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/qdoctests-qdocmanuallikefileoutput.html63
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/toc-test.html (renamed from src/qdoc/qdoc/tests/generatedoutput/expected_output/tocbreadcrumbs/toc-test.html)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/toc.html31
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/crash.webxml12
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/images/01.pngbin0 -> 1142 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/images/leonardo-da-vinci.pngbin0 -> 15076 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/outputfromqdocfiles.index34
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocfileoutput-exhaustive.webxml92
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocfileoutput-linking.webxml20
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocfileoutput.webxml95
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocmanuallikefileoutput.webxml57
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/toc-test.webxml44
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/toc.webxml24
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/images/01.pngbin0 -> 1142 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/images/leonardo-da-vinci.pngbin0 -> 15076 bytes
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/qdoctests-outputfromqdocfiles.qdoc241
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/qdoctests-outputfromqdocmanuallikefiles.qdoc59
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/snippets/main.cpp10
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/toc.qdoc (renamed from src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/toc.qdoc)0
-rw-r--r--src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/tocnavigation.qdocconf48
74 files changed, 1142 insertions, 188 deletions
diff --git a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/docbook_test.qdocconf b/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/docbook_test.qdocconf
deleted file mode 100644
index f0c7fdc41..000000000
--- a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/docbook_test.qdocconf
+++ /dev/null
@@ -1,30 +0,0 @@
-# Shared configuration for all tests
-
-sources.fileextensions = "*.qml *.cpp *.qdoc"
-headers.fileextensions = "*.h"
-
-# images
-imagedirs = ../images
-
-# zero warning policy
-warninglimit = 0
-warninglimit.enabled = true
-
-# don't write host system-specific paths to index files
-locationinfo = false
-
-# By default, use -outputdir directly, no subdir.
-# outputsubdir '.' matches the root of expected_output/
-HTML.nosubdirs = true
-HTML.outputsubdir = .
-
-include(test.qdocconf)
-
-outputformats = DocBook
-DocBook.nosubdirs = true
-DocBook.outputsubdir = docbook
-DocBook.its = true
-
-# TODO: DocBook generator has trouble handling shared comment nodes
-# allow two warnings related to these
-warninglimit = 2
diff --git a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/docbookext_test.qdocconf b/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/docbookext_test.qdocconf
deleted file mode 100644
index 700b8ae39..000000000
--- a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/docbookext_test.qdocconf
+++ /dev/null
@@ -1,27 +0,0 @@
-sources.fileextensions = "*.qml *.cpp *.qdoc"
-headers.fileextensions = "*.h"
-
-# images
-imagedirs = ../images
-
-# zero warning policy
-warninglimit = 0
-warninglimit.enabled = true
-
-# don't write host system-specific paths to index files
-locationinfo = false
-
-# By default, use -outputdir directly, no subdir.
-# outputsubdir '.' matches the root of expected_output/
-HTML.nosubdirs = true
-HTML.outputsubdir = .
-
-include(test.qdocconf)
-outputformats = DocBook
-DocBook.nosubdirs = true
-DocBook.outputsubdir = docbookext
-DocBook.usedocbookextensions = true
-
-# TODO: DocBook generator has trouble handling shared comment nodes
-# allow two warnings related to these
-warninglimit = 2
diff --git a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/tocbreadcrumbs.qdocconf b/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/tocbreadcrumbs.qdocconf
deleted file mode 100644
index e315cb81d..000000000
--- a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/tocbreadcrumbs.qdocconf
+++ /dev/null
@@ -1,9 +0,0 @@
-include(tocnavigation.qdocconf)
-
-sources += toc.qdoc
-
-navigation.toctitles = TOC
-navigation.toctitles.inclusive = true
-
-HTML.nosubdirs = true
-HTML.outputsubdir = tocbreadcrumbs
diff --git a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/tocnavigation.qdocconf b/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/tocnavigation.qdocconf
deleted file mode 100644
index 28cfd74a3..000000000
--- a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/tocnavigation.qdocconf
+++ /dev/null
@@ -1,22 +0,0 @@
-sources.fileextensions = "*.qml *.cpp *.qdoc"
-headers.fileextensions = "*.h"
-
-# images
-imagedirs = ../images
-
-# zero warning policy
-warninglimit = 0
-warninglimit.enabled = true
-
-# don't write host system-specific paths to index files
-locationinfo = false
-
-# By default, use -outputdir directly, no subdir.
-# outputsubdir '.' matches the root of expected_output/
-HTML.nosubdirs = true
-HTML.outputsubdir = .
-
-include(test.qdocconf)
-
-defines =
-navigation.toctitles = "Table of Contents"
diff --git a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/webxml_test.qdocconf b/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/webxml_test.qdocconf
deleted file mode 100644
index 185ff9151..000000000
--- a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/webxml_test.qdocconf
+++ /dev/null
@@ -1,17 +0,0 @@
-sources.fileextensions = "*.qml *.cpp *.qdoc"
-headers.fileextensions = "*.h"
-
-# images
-imagedirs = ../images
-
-# zero warning policy
-warninglimit = 0
-warninglimit.enabled = true
-
-# don't write host system-specific paths to index files
-locationinfo = false
-
-include(test.qdocconf)
-outputformats = WebXML
-WebXML.quotinginformation = true
-WebXML.nosubdirs = true
diff --git a/src/qdoc/qdoc/tests/generatedoutput/tst_generatedoutput.cpp b/src/qdoc/qdoc/tests/generatedoutput/tst_generatedoutput.cpp
index cff0fb6a1..389cb8c93 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/tst_generatedoutput.cpp
+++ b/src/qdoc/qdoc/tests/generatedoutput/tst_generatedoutput.cpp
@@ -17,26 +17,20 @@ private slots:
void init();
// HTML generator
- void htmlFromQDocFile();
void htmlFromCpp();
void htmlFromQml();
// WebXML generator
- void webXmlFromQDocFile();
void webXmlFromCpp();
void webXmlFromQml();
// DocBook generator (wiht and without extensions)
- void docBookFromQDocFile();
void docBookFromCpp();
void docBookFromQml();
- void docBookWithExtensionsFromQDocFile();
void docBookWithExtensionsFromCpp();
void docBookWithExtensionsFromQml();
// Output format independent tests
- void autoNavigation();
- void tocBreadcrumbs();
void examplesManifestXmlAndQhp();
void ignoresinceVariable();
void templateParameters();
@@ -194,16 +188,6 @@ void tst_generatedOutput::copyIndexFiles()
}
}
-void tst_generatedOutput::htmlFromQDocFile()
-{
- testAndCompare("testdata/outputfromqdocfiles/test.qdocconf",
- "qdoctests-qdocfileoutput.html "
- "qdoctests-qdocfileoutput-linking.html "
- "qdoctests-qdocmanuallikefileoutput.html "
- "qdoctests-qdocfileoutput-exhaustive.html "
- "toc.html");
-}
-
void tst_generatedOutput::htmlFromCpp()
{
testAndCompare("testdata/configs/testcpp.qdocconf",
@@ -246,15 +230,6 @@ void tst_generatedOutput::htmlFromQml()
"qml-int.html");
}
-void tst_generatedOutput::webXmlFromQDocFile()
-{
- testAndCompare("testdata/outputfromqdocfiles/webxml_test.qdocconf",
- "html/qdoctests-qdocfileoutput.webxml "
- "html/qdoctests-qdocmanuallikefileoutput.webxml "
- "html/qdoctests-qdocfileoutput-linking.webxml "
- "html/qdoctests-qdocfileoutput-exhaustive.webxml");
-}
-
void tst_generatedOutput::webXmlFromCpp()
{
testAndCompare("testdata/configs/webxml_testcpp.qdocconf",
@@ -281,15 +256,6 @@ void tst_generatedOutput::tableAfterValue()
"tableaftervalue/tableaftervalue.xml");
}
-void tst_generatedOutput::docBookFromQDocFile()
-{
- testAndCompare("testdata/outputfromqdocfiles/docbook_test.qdocconf",
- "docbook/qdoctests-qdocfileoutput.xml "
- "docbook/qdoctests-qdocmanuallikefileoutput.xml "
- "docbook/qdoctests-qdocfileoutput-linking.xml "
- "docbook/qdoctests-qdocfileoutput-exhaustive.xml");
-}
-
void tst_generatedOutput::docBookFromCpp()
{
testAndCompare("testdata/configs/docbook_testcpp.qdocconf",
@@ -320,15 +286,6 @@ void tst_generatedOutput::docBookFromQml()
"docbook/qml-int.xml");
}
-void tst_generatedOutput::docBookWithExtensionsFromQDocFile()
-{
- testAndCompare("testdata/outputfromqdocfiles/docbookext_test.qdocconf",
- "docbookext/qdoctests-qdocfileoutput.xml "
- "docbookext/qdoctests-qdocmanuallikefileoutput.xml "
- "docbookext/qdoctests-qdocfileoutput-linking.xml "
- "docbookext/qdoctests-qdocfileoutput-exhaustive.xml");
-}
-
void tst_generatedOutput::docBookWithExtensionsFromCpp()
{
testAndCompare("testdata/configs/docbookext_testcpp.qdocconf",
@@ -357,26 +314,6 @@ void tst_generatedOutput::docBookWithExtensionsFromQml()
"docbookext/qml-int.xml");
}
-void tst_generatedOutput::autoNavigation()
-{
- // Same expected files as htmlFromQdocFile, but with auto-generated navigation links
- testAndCompare("testdata/outputfromqdocfiles/tocnavigation.qdocconf",
- "qdoctests-qdocfileoutput.html "
- "qdoctests-qdocfileoutput-linking.html "
- "qdoctests-qdocfileoutput-exhaustive.html "
- "toc.html");
-}
-
-void tst_generatedOutput::tocBreadcrumbs()
-{
- testAndCompare("testdata/outputfromqdocfiles/tocbreadcrumbs.qdocconf",
- "tocbreadcrumbs/qdoctests-qdocfileoutput.html "
- "tocbreadcrumbs/qdoctests-qdocfileoutput-linking.html "
- "tocbreadcrumbs/qdoctests-qdocfileoutput-exhaustive.html "
- "tocbreadcrumbs/toc-test.html");
-}
-
-
void tst_generatedOutput::examplesManifestXmlAndQhp()
{
testAndCompare("testdata/configs/examples-qhp.qdocconf",
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/crash.xml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/crash.xml
new file mode 100644
index 000000000..04e27b4a3
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/crash.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.2" xml:lang="en">
+<db:info>
+<db:title></db:title>
+<db:productname>OutputFromQDocFiles</db:productname>
+<db:edition>OutputFromQDocFiles - A test project for QDoc build artifacts</db:edition>
+<db:titleabbrev>A test project for QDoc build artifacts</db:titleabbrev>
+<db:abstract>
+<db:para>A test project for QDoc build artifacts.</db:para></db:abstract>
+</db:info>
+<db:para><db:link xlink:href=""></db:link></db:para>
+</db:article>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/images/01.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/images/01.png
new file mode 100644
index 000000000..d73ab969b
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/images/01.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/images/leonardo-da-vinci.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/images/leonardo-da-vinci.png
new file mode 100644
index 000000000..854acb4ca
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/images/leonardo-da-vinci.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbookext/qdoctests-qdocfileoutput-exhaustive.xml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/qdoctests-qdocfileoutput-exhaustive.xml
index 237896629..237896629 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbookext/qdoctests-qdocfileoutput-exhaustive.xml
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/qdoctests-qdocfileoutput-exhaustive.xml
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbookext/qdoctests-qdocfileoutput-linking.xml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/qdoctests-qdocfileoutput-linking.xml
index 51b7e62b3..51b7e62b3 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbookext/qdoctests-qdocfileoutput-linking.xml
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/qdoctests-qdocfileoutput-linking.xml
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbookext/qdoctests-qdocfileoutput.xml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/qdoctests-qdocfileoutput.xml
index 72905681d..72905681d 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbookext/qdoctests-qdocfileoutput.xml
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/qdoctests-qdocfileoutput.xml
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbookext/qdoctests-qdocmanuallikefileoutput.xml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/qdoctests-qdocmanuallikefileoutput.xml
index 38e3887ef..38e3887ef 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbookext/qdoctests-qdocmanuallikefileoutput.xml
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/qdoctests-qdocmanuallikefileoutput.xml
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/toc.xml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/toc.xml
new file mode 100644
index 000000000..14ccd795d
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/docbook/toc.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.2" xml:lang="en">
+<db:info>
+<db:title>Table of Contents</db:title>
+<db:productname>OutputFromQDocFiles</db:productname>
+<db:edition>OutputFromQDocFiles - A test project for QDoc build artifacts</db:edition>
+<db:titleabbrev>A test project for QDoc build artifacts</db:titleabbrev>
+<db:extendedlink xlink:type="extended"><db:link xlink:to="qdoctests-qdocfileoutput-linking.xml" xlink:type="arc" xlink:arcrole="prev" xlink:title="QDoc Linking Test"/></db:extendedlink>
+<db:abstract>
+<db:para>A test project for QDoc build artifacts.</db:para></db:abstract>
+</db:info>
+<db:itemizedlist>
+<db:listitem>
+<db:para><db:link xlink:href="qdoctests-qdocfileoutput.xml">QDoc Testing</db:link></db:para>
+</db:listitem>
+<db:listitem>
+<db:para><db:link xlink:href="qdoctests-qdocfileoutput-linking.xml">QDoc Linking Test</db:link></db:para>
+</db:listitem>
+<db:listitem>
+<db:para><db:link xlink:href="toc.xml">Table of Contents</db:link></db:para>
+</db:listitem>
+</db:itemizedlist>
+</db:article>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/crash.html b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/crash.html
new file mode 100644
index 000000000..7ac452663
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/crash.html
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+<!-- qdoctests-outputfromqdocfiles.qdoc -->
+ <title>OutputFromQDocFiles</title>
+</head>
+<body>
+<div class="sidebar"><div class="sidebar-content" id="sidebar-content"></div></div>
+<!-- $$$crash.html-description -->
+<div class="descr" id="details">
+<p></p>
+</div>
+<!-- @@@crash.html -->
+</body>
+</html>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/images/01.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/images/01.png
new file mode 100644
index 000000000..d73ab969b
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/images/01.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/images/leonardo-da-vinci.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/images/leonardo-da-vinci.png
new file mode 100644
index 000000000..854acb4ca
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/images/leonardo-da-vinci.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/outputfromqdocfiles.index b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/outputfromqdocfiles.index
new file mode 100644
index 000000000..eb63b02c2
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/outputfromqdocfiles.index
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE QDOCINDEX>
+<INDEX url="" title="A test project for QDoc build artifacts" version="" project="OutputFromQDocFiles">
+ <namespace name="" status="active" access="public" module="outputfromqdocfiles">
+ <page name="qdoctests-qdocmanuallikefileoutput.html" href="qdoctests-qdocmanuallikefileoutput.html" status="active" location="qdoctests-outputfromqdocmanuallikefiles.qdoc" documented="true" subtype="page" title="Document Navigation" fulltitle="Document Navigation" subtitle="">
+ <target name="previouspage-command"/>
+ <contents name="commands" title="Commands" level="1"/>
+ <contents name="previouspage" title="\previouspage" level="2"/>
+ </page>
+ <page name="qdoctests-qdocfileoutput-exhaustive.html" href="qdoctests-qdocfileoutput-exhaustive.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Exhaustive testing of QDoc commands" fulltitle="Exhaustive testing of QDoc commands" subtitle="" brief="This page is a dumping ground for QDoc commands under test">
+ <contents name="this-is-a-section1" title="This is a section1" level="1"/>
+ <contents name="this-is-a-section2" title="This is a section2" level="2"/>
+ <contents name="this-is-a-section3" title="This is a section3" level="3"/>
+ <contents name="this-is-a-section4" title="This is a section4" level="4"/>
+ <contents name="images" title="Images" level="1"/>
+ <contents name="commands-not-yet-tested" title="Commands not yet tested" level="1"/>
+ </page>
+ <page name="toc.html" href="toc.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Table of Contents" fulltitle="Table of Contents" subtitle=""/>
+ <page name="qdoctests-qdocfileoutput.html" href="qdoctests-qdocfileoutput.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Testing QDoc output from .qdoc files" fulltitle="Testing QDoc output from .qdoc files" subtitle="" brief="This is a simple page for testing purposes only">
+ <contents name="supported-file-types" title="Supported file types" level="1"/>
+ <contents name="further-information" title="Further information" level="1"/>
+ <contents name="linking" title="Linking" level="1"/>
+ <contents name="qdoc-linking-test" title="QDoc Linking Test" level="1"/>
+ <contents name="linking-to-something-in-a-section-title" title="Linking to something in a section title" level="1"/>
+ </page>
+ <page name="qdoctests-qdocfileoutput-linking.html" href="qdoctests-qdocfileoutput-linking.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Testing QDoc's link command" fulltitle="Testing QDoc's link command" subtitle="" brief="This is a page for testing QDoc's link command">
+ <target name="link-test-target"/>
+ <keyword name="qdoc-linking-test" title="QDoc Linking Test"/>
+ <contents name="link-targets" title="Link targets" level="1"/>
+ </page>
+ <page name="crash.html" href="crash.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="" fulltitle="" subtitle=""/>
+ </namespace>
+</INDEX>
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/qdoctests-qdocfileoutput-exhaustive.html b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/qdoctests-qdocfileoutput-exhaustive.html
index c4cb46759..c4cb46759 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/qdoctests-qdocfileoutput-exhaustive.html
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/qdoctests-qdocfileoutput-exhaustive.html
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/qdoctests-qdocfileoutput-linking.html b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/qdoctests-qdocfileoutput-linking.html
index b4d63e76e..b4d63e76e 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/qdoctests-qdocfileoutput-linking.html
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/qdoctests-qdocfileoutput-linking.html
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/qdoctests-qdocfileoutput.html b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/qdoctests-qdocfileoutput.html
index 74570305c..74570305c 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/qdoctests-qdocfileoutput.html
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/qdoctests-qdocfileoutput.html
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/qdoctests-qdocmanuallikefileoutput.html b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/qdoctests-qdocmanuallikefileoutput.html
index e4b120bd0..e4b120bd0 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/qdoctests-qdocmanuallikefileoutput.html
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/qdoctests-qdocmanuallikefileoutput.html
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/toc.html b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/toc.html
index 5901538d0..5901538d0 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/toc.html
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/html/toc.html
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/crash.webxml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/crash.webxml
new file mode 100644
index 000000000..38c761f7d
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/crash.webxml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<WebXML>
+ <document>
+ <page name="crash.html" href="crash.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="" fulltitle="" subtitle="">
+ <description>
+ <para></para>
+ </description>
+ </page>
+ </document>
+</WebXML>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/images/01.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/images/01.png
new file mode 100644
index 000000000..d73ab969b
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/images/01.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/images/leonardo-da-vinci.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/images/leonardo-da-vinci.png
new file mode 100644
index 000000000..854acb4ca
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/images/leonardo-da-vinci.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/outputfromqdocfiles.index b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/outputfromqdocfiles.index
new file mode 100644
index 000000000..eb63b02c2
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/outputfromqdocfiles.index
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE QDOCINDEX>
+<INDEX url="" title="A test project for QDoc build artifacts" version="" project="OutputFromQDocFiles">
+ <namespace name="" status="active" access="public" module="outputfromqdocfiles">
+ <page name="qdoctests-qdocmanuallikefileoutput.html" href="qdoctests-qdocmanuallikefileoutput.html" status="active" location="qdoctests-outputfromqdocmanuallikefiles.qdoc" documented="true" subtype="page" title="Document Navigation" fulltitle="Document Navigation" subtitle="">
+ <target name="previouspage-command"/>
+ <contents name="commands" title="Commands" level="1"/>
+ <contents name="previouspage" title="\previouspage" level="2"/>
+ </page>
+ <page name="qdoctests-qdocfileoutput-exhaustive.html" href="qdoctests-qdocfileoutput-exhaustive.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Exhaustive testing of QDoc commands" fulltitle="Exhaustive testing of QDoc commands" subtitle="" brief="This page is a dumping ground for QDoc commands under test">
+ <contents name="this-is-a-section1" title="This is a section1" level="1"/>
+ <contents name="this-is-a-section2" title="This is a section2" level="2"/>
+ <contents name="this-is-a-section3" title="This is a section3" level="3"/>
+ <contents name="this-is-a-section4" title="This is a section4" level="4"/>
+ <contents name="images" title="Images" level="1"/>
+ <contents name="commands-not-yet-tested" title="Commands not yet tested" level="1"/>
+ </page>
+ <page name="toc.html" href="toc.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Table of Contents" fulltitle="Table of Contents" subtitle=""/>
+ <page name="qdoctests-qdocfileoutput.html" href="qdoctests-qdocfileoutput.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Testing QDoc output from .qdoc files" fulltitle="Testing QDoc output from .qdoc files" subtitle="" brief="This is a simple page for testing purposes only">
+ <contents name="supported-file-types" title="Supported file types" level="1"/>
+ <contents name="further-information" title="Further information" level="1"/>
+ <contents name="linking" title="Linking" level="1"/>
+ <contents name="qdoc-linking-test" title="QDoc Linking Test" level="1"/>
+ <contents name="linking-to-something-in-a-section-title" title="Linking to something in a section title" level="1"/>
+ </page>
+ <page name="qdoctests-qdocfileoutput-linking.html" href="qdoctests-qdocfileoutput-linking.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Testing QDoc's link command" fulltitle="Testing QDoc's link command" subtitle="" brief="This is a page for testing QDoc's link command">
+ <target name="link-test-target"/>
+ <keyword name="qdoc-linking-test" title="QDoc Linking Test"/>
+ <contents name="link-targets" title="Link targets" level="1"/>
+ </page>
+ <page name="crash.html" href="crash.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="" fulltitle="" subtitle=""/>
+ </namespace>
+</INDEX>
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/html/qdoctests-qdocfileoutput-exhaustive.webxml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/qdoctests-qdocfileoutput-exhaustive.webxml
index 05d560a7e..05d560a7e 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/html/qdoctests-qdocfileoutput-exhaustive.webxml
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/qdoctests-qdocfileoutput-exhaustive.webxml
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/html/qdoctests-qdocfileoutput-linking.webxml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/qdoctests-qdocfileoutput-linking.webxml
index 1bb19e10e..1bb19e10e 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/html/qdoctests-qdocfileoutput-linking.webxml
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/qdoctests-qdocfileoutput-linking.webxml
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/html/qdoctests-qdocfileoutput.webxml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/qdoctests-qdocfileoutput.webxml
index 13b3e5c51..13b3e5c51 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/html/qdoctests-qdocfileoutput.webxml
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/qdoctests-qdocfileoutput.webxml
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/html/qdoctests-qdocmanuallikefileoutput.webxml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/qdoctests-qdocmanuallikefileoutput.webxml
index 4502dcf7f..4502dcf7f 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/html/qdoctests-qdocmanuallikefileoutput.webxml
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/qdoctests-qdocmanuallikefileoutput.webxml
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/toc.webxml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/toc.webxml
new file mode 100644
index 000000000..bef07db18
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/expected/webxml/toc.webxml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<WebXML>
+ <document>
+ <page name="toc.html" href="toc.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Table of Contents" fulltitle="Table of Contents" subtitle="">
+ <description>
+ <relation href="qdoctests-qdocfileoutput-linking.html" type="page" meta="previous" description="Testing QDoc's link command"/>
+ <list type="bullet">
+ <item>
+ <para>
+ <link raw="Testing QDoc output from .qdoc files" href="qdoctests-qdocfileoutput.html" type="page" page="Testing QDoc output from .qdoc files">QDoc Testing</link></para>
+ </item>
+ <item>
+ <para>
+ <link raw="QDoc Linking Test" href="qdoctests-qdocfileoutput-linking.html" type="page" page="Testing QDoc's link command">QDoc Linking Test</link></para>
+ </item>
+ <item>
+ <para>
+ <link raw="Table of Contents" href="toc.html" type="page" page="Table of Contents">Table of Contents</link></para>
+ </item>
+ </list>
+ </description>
+ </page>
+ </document>
+</WebXML>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/images/01.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/images/01.png
new file mode 100644
index 000000000..d73ab969b
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/images/01.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/images/leonardo-da-vinci.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/images/leonardo-da-vinci.png
new file mode 100644
index 000000000..854acb4ca
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/images/leonardo-da-vinci.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/test.qdocconf b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/outputfromqdocfiles.qdocconf
index ebe763600..da99d9a4d 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/test.qdocconf
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/outputfromqdocfiles.qdocconf
@@ -7,19 +7,24 @@ sources.fileextensions = "*.qml *.cpp *.qdoc"
headers.fileextensions = "*.h"
# images
-imagedirs = ../images
+imagedirs = images
-# zero warning policy
-warninglimit = 0
+# zero warning policy -- here; allow one which is (qdoc) warning: Can't link to ''
+warninglimit = 1
warninglimit.enabled = true
# don't write host system-specific paths to index files
locationinfo = false
-# By default, use -outputdir directly, no subdir.
-# outputsubdir '.' matches the root of expected_output/
+outputformats = HTML WebXML DocBook
HTML.nosubdirs = true
-HTML.outputsubdir = .
+HTML.outputsubdir = html
+WebXML.quotinginformation = true
+WebXML.nosubdirs = true
+WebXML.outputsubdir = webxml
+DocBook.nosubdirs = true
+DocBook.outputsubdir = docbook
+DocBook.usedocbookextensions = true
sources = qdoctests-outputfromqdocfiles.qdoc \
qdoctests-outputfromqdocmanuallikefiles.qdoc
@@ -36,6 +41,3 @@ macro.PROD = QDoc
macro.borderedimage = "\\div {class=\"border\"} \\image \1\n\\enddiv"
defines = test_navigation
-
-# allow (qdoc) warning: Can't link to ''
-warninglimit += 1
diff --git a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/qdoctests-outputfromqdocfiles.qdoc b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/qdoctests-outputfromqdocfiles.qdoc
index b19905b7e..b19905b7e 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/qdoctests-outputfromqdocfiles.qdoc
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/qdoctests-outputfromqdocfiles.qdoc
diff --git a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/qdoctests-outputfromqdocmanuallikefiles.qdoc b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/qdoctests-outputfromqdocmanuallikefiles.qdoc
index 23f229745..23f229745 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/qdoctests-outputfromqdocmanuallikefiles.qdoc
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/qdoctests-outputfromqdocmanuallikefiles.qdoc
diff --git a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/snippets/main.cpp b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/snippets/main.cpp
index 6993849e4..6993849e4 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/snippets/main.cpp
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/outputfromqdocfiles/snippets/main.cpp
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/crash.xml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/crash.xml
new file mode 100644
index 000000000..542b9ce59
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/crash.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.2" xml:lang="en">
+<db:info>
+<db:title></db:title>
+<db:productname>OutputFromQDocFiles</db:productname>
+<db:edition>OutputFromQDocFiles - A test project for QDoc build artifacts</db:edition>
+<db:titleabbrev>A test project for QDoc build artifacts</db:titleabbrev>
+<db:extendedlink xlink:type="extended"><db:link xlink:to="qdoctests-qdocfileoutput-linking.xml" xlink:type="arc" xlink:arcrole="prev" xlink:title="QDoc Linking Test"/></db:extendedlink>
+<db:extendedlink xlink:type="extended"><db:link xlink:to="toc.xml" xlink:type="arc" xlink:arcrole="next" xlink:title="Table of Contents"/></db:extendedlink>
+<db:abstract>
+<db:para>A test project for QDoc build artifacts.</db:para></db:abstract>
+</db:info>
+<db:para><db:link xlink:href=""></db:link></db:para>
+</db:article>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/images/01.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/images/01.png
new file mode 100644
index 000000000..d73ab969b
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/images/01.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/images/leonardo-da-vinci.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/images/leonardo-da-vinci.png
new file mode 100644
index 000000000..854acb4ca
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/images/leonardo-da-vinci.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbook/qdoctests-qdocfileoutput-exhaustive.xml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/qdoctests-qdocfileoutput-exhaustive.xml
index 58e8341bd..f7aff1e27 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbook/qdoctests-qdocfileoutput-exhaustive.xml
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/qdoctests-qdocfileoutput-exhaustive.xml
@@ -1,10 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:its="http://www.w3.org/2005/11/its" version="5.2" xml:lang="en">
+<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.2" xml:lang="en">
<db:info>
<db:title>Exhaustive testing of QDoc commands</db:title>
<db:productname>OutputFromQDocFiles</db:productname>
<db:edition>OutputFromQDocFiles - A test project for QDoc build artifacts</db:edition>
<db:titleabbrev>A test project for QDoc build artifacts</db:titleabbrev>
+<db:extendedlink xlink:type="extended"><db:link xlink:to="qdoctests-qdocfileoutput.xml" xlink:type="arc" xlink:arcrole="prev" xlink:title="QDoc Testing"/></db:extendedlink>
+<db:extendedlink xlink:type="extended"><db:link xlink:to="qdoctests-qdocfileoutput-linking.xml" xlink:type="arc" xlink:arcrole="next" xlink:title="QDoc Linking Test"/></db:extendedlink>
<db:abstract>
<db:para>This page is a dumping ground for QDoc commands under test.</db:para>
</db:abstract>
@@ -17,11 +19,11 @@
<db:title>This is a section3</db:title>
<db:section xml:id="this-is-a-section4">
<db:title>This is a section4</db:title>
-<db:programlisting language="cpp" role="bad" its:translate="no">This is bad code
+<db:programlisting language="cpp" role="bad">This is bad code
</db:programlisting>
<db:para>This text should have a line break riiiiight noooow.</db:para>
<db:para><db:emphasis role="bold">All your text belong to bold</db:emphasis> ...And this is an examble of only <db:emphasis role="bold">bold</db:emphasis> being, well, bold.</db:para>
-<db:programlisting language="cpp" its:translate="no"> ...
+<db:programlisting language="cpp"> ...
</db:programlisting>
<db:title>This a caption</db:title>
<db:para>Lorem legal ipsum</db:para>
@@ -115,7 +117,7 @@
</db:imageobject>
</db:inlinemediaobject> inline image with alternative text, which should be added as an attribute to the inline image.</db:para>
<db:para>File quoting:</db:para>
-<db:programlisting language="cpp" its:translate="no"> if (false) {
+<db:programlisting language="cpp"> if (false) {
return 1;
}
</db:programlisting>
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbook/qdoctests-qdocfileoutput-linking.xml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/qdoctests-qdocfileoutput-linking.xml
index 526279c9a..f7a8c6f59 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbook/qdoctests-qdocfileoutput-linking.xml
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/qdoctests-qdocfileoutput-linking.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:its="http://www.w3.org/2005/11/its" version="5.2" xml:lang="en">
+<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.2" xml:lang="en">
<db:info>
<db:title>Testing QDoc's link command</db:title>
<db:productname>OutputFromQDocFiles</db:productname>
<db:edition>OutputFromQDocFiles - A test project for QDoc build artifacts</db:edition>
<db:titleabbrev>A test project for QDoc build artifacts</db:titleabbrev>
-<db:extendedlink xlink:type="extended"><db:link xlink:to="qdoctests-qdocfileoutput.xml" xlink:type="arc" xlink:arcrole="prev" xlink:title="QDoc Testing"/></db:extendedlink>
-<db:extendedlink xlink:type="extended"><db:link xlink:to="toc.xml" xlink:type="arc" xlink:arcrole="next" xlink:title="Table of Contents"/></db:extendedlink>
+<db:extendedlink xlink:type="extended"><db:link xlink:to="qdoctests-qdocfileoutput-exhaustive.xml" xlink:type="arc" xlink:arcrole="prev" xlink:title="Exhaustive testing of QDoc commands"/></db:extendedlink>
+<db:extendedlink xlink:type="extended"><db:link xlink:to="" xlink:type="arc" xlink:arcrole="next" xlink:title="Random page"/></db:extendedlink>
<db:abstract>
<db:para>This is a page for testing QDoc's link command.</db:para>
</db:abstract>
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbook/qdoctests-qdocfileoutput.xml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/qdoctests-qdocfileoutput.xml
index a4a1d7c48..81b07bf82 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbook/qdoctests-qdocfileoutput.xml
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/qdoctests-qdocfileoutput.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:its="http://www.w3.org/2005/11/its" version="5.2" xml:lang="en">
+<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.2" xml:lang="en">
<db:info>
<db:title>Testing QDoc output from .qdoc files</db:title>
<db:productname>OutputFromQDocFiles</db:productname>
<db:edition>OutputFromQDocFiles - A test project for QDoc build artifacts</db:edition>
<db:titleabbrev>A test project for QDoc build artifacts</db:titleabbrev>
-<db:extendedlink xlink:type="extended"><db:link xlink:to="qdoctests-qdocfileoutput-linking.xml" xlink:type="arc" xlink:arcrole="next" xlink:title="QDoc Linking Test"/></db:extendedlink>
+<db:extendedlink xlink:type="extended"><db:link xlink:to="qdoctests-qdocfileoutput-exhaustive.xml" xlink:type="arc" xlink:arcrole="next" xlink:title="Exhaustive testing of QDoc commands"/></db:extendedlink>
<db:abstract>
<db:para>This is a simple page for testing purposes only.</db:para>
</db:abstract>
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbook/qdoctests-qdocmanuallikefileoutput.xml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/qdoctests-qdocmanuallikefileoutput.xml
index c9e3ec024..38e3887ef 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/docbook/qdoctests-qdocmanuallikefileoutput.xml
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/qdoctests-qdocmanuallikefileoutput.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:its="http://www.w3.org/2005/11/its" version="5.2" xml:lang="en">
+<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.2" xml:lang="en">
<db:info>
<db:title>Document Navigation</db:title>
<db:productname>OutputFromQDocFiles</db:productname>
@@ -10,7 +10,7 @@
</db:info>
<db:para>The navigation commands...</db:para>
<db:blockquote/>
-<db:programlisting language="cpp" its:translate="no">&amp;lt;head&amp;gt;
+<db:programlisting language="cpp">&amp;lt;head&amp;gt;
...
&amp;lt;link rel=&amp;quot;start&amp;quot; href=&amp;quot;basicqt.html&amp;quot; /&amp;gt;
...
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/toc-test.xml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/toc-test.xml
new file mode 100644
index 000000000..6230326b7
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/toc-test.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.2" xml:lang="en">
+<db:info>
+<db:title>TOC</db:title>
+<db:productname>OutputFromQDocFiles</db:productname>
+<db:edition>OutputFromQDocFiles - A test project for QDoc build artifacts</db:edition>
+<db:titleabbrev>A test project for QDoc build artifacts</db:titleabbrev>
+<db:abstract>
+<db:para>A test project for QDoc build artifacts.</db:para></db:abstract>
+</db:info>
+<db:itemizedlist>
+<db:listitem>
+<db:para><db:link xlink:href="qdoctests-qdocfileoutput.xml">QDoc Testing</db:link></db:para>
+<db:itemizedlist>
+<db:listitem>
+<db:para><db:link xlink:href="qdoctests-qdocfileoutput-exhaustive.xml">Exhaustive testing of QDoc commands</db:link></db:para>
+</db:listitem>
+</db:itemizedlist>
+</db:listitem>
+<db:listitem>
+<db:para>Linking</db:para>
+<db:itemizedlist>
+<db:listitem>
+<db:para><db:link xlink:href="qdoctests-qdocfileoutput-linking.xml">QDoc Linking Test</db:link></db:para>
+<db:itemizedlist>
+<db:listitem>
+<db:para><db:link xlink:href="qdoctests-qdocfileoutput-linking.xml#link-targets">Link targets</db:link></db:para>
+</db:listitem>
+</db:itemizedlist>
+</db:listitem>
+<db:listitem>
+<db:para><db:link xlink:href="crash.xml">Random page</db:link></db:para>
+</db:listitem>
+<db:listitem>
+<db:para><db:link xlink:href="toc.xml">Table of Contents</db:link></db:para>
+</db:listitem>
+</db:itemizedlist>
+</db:listitem>
+</db:itemizedlist>
+</db:article>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/toc.xml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/toc.xml
new file mode 100644
index 000000000..693673259
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/docbook/toc.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.2" xml:lang="en">
+<db:info>
+<db:title>Table of Contents</db:title>
+<db:productname>OutputFromQDocFiles</db:productname>
+<db:edition>OutputFromQDocFiles - A test project for QDoc build artifacts</db:edition>
+<db:titleabbrev>A test project for QDoc build artifacts</db:titleabbrev>
+<db:extendedlink xlink:type="extended"><db:link xlink:to="" xlink:type="arc" xlink:arcrole="prev" xlink:title="Random page"/></db:extendedlink>
+<db:abstract>
+<db:para>A test project for QDoc build artifacts.</db:para></db:abstract>
+</db:info>
+<db:itemizedlist>
+<db:listitem>
+<db:para><db:link xlink:href="qdoctests-qdocfileoutput.xml">QDoc Testing</db:link></db:para>
+</db:listitem>
+<db:listitem>
+<db:para><db:link xlink:href="qdoctests-qdocfileoutput-linking.xml">QDoc Linking Test</db:link></db:para>
+</db:listitem>
+<db:listitem>
+<db:para><db:link xlink:href="toc.xml">Table of Contents</db:link></db:para>
+</db:listitem>
+</db:itemizedlist>
+</db:article>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/crash.html b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/crash.html
new file mode 100644
index 000000000..3c502d3fc
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/crash.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+<!-- qdoctests-outputfromqdocfiles.qdoc -->
+ <title>OutputFromQDocFiles</title>
+</head>
+<body>
+ <link rel="prev" href="qdoctests-qdocfileoutput-linking.html" />
+ <link rel="next" href="toc.html" />
+<p class="naviNextPrevious headerNavi">
+<a class="prevPage" href="qdoctests-qdocfileoutput-linking.html">QDoc Linking Test</a>
+<a class="nextPage" href="toc.html">Table of Contents</a>
+</p>
+<div class="sidebar"><div class="sidebar-content" id="sidebar-content"></div></div>
+<!-- $$$crash.html-description -->
+<div class="descr" id="details">
+<p></p>
+</div>
+<!-- @@@crash.html -->
+<p class="naviNextPrevious footerNavi">
+<a class="prevPage" href="qdoctests-qdocfileoutput-linking.html">QDoc Linking Test</a>
+<a class="nextPage" href="toc.html">Table of Contents</a>
+</p>
+</body>
+</html>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/images/01.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/images/01.png
new file mode 100644
index 000000000..d73ab969b
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/images/01.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/images/leonardo-da-vinci.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/images/leonardo-da-vinci.png
new file mode 100644
index 000000000..854acb4ca
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/images/leonardo-da-vinci.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/outputfromqdocfiles.index b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/outputfromqdocfiles.index
new file mode 100644
index 000000000..c158f9fac
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/outputfromqdocfiles.index
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE QDOCINDEX>
+<INDEX url="" title="A test project for QDoc build artifacts" version="" project="OutputFromQDocFiles">
+ <namespace name="" status="active" access="public" module="outputfromqdocfiles">
+ <page name="qdoctests-qdocmanuallikefileoutput.html" href="qdoctests-qdocmanuallikefileoutput.html" status="active" location="qdoctests-outputfromqdocmanuallikefiles.qdoc" documented="true" subtype="page" title="Document Navigation" fulltitle="Document Navigation" subtitle="">
+ <target name="previouspage-command"/>
+ <contents name="commands" title="Commands" level="1"/>
+ <contents name="previouspage" title="\previouspage" level="2"/>
+ </page>
+ <page name="qdoctests-qdocfileoutput-exhaustive.html" href="qdoctests-qdocfileoutput-exhaustive.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Exhaustive testing of QDoc commands" fulltitle="Exhaustive testing of QDoc commands" subtitle="" brief="This page is a dumping ground for QDoc commands under test">
+ <contents name="this-is-a-section1" title="This is a section1" level="1"/>
+ <contents name="this-is-a-section2" title="This is a section2" level="2"/>
+ <contents name="this-is-a-section3" title="This is a section3" level="3"/>
+ <contents name="this-is-a-section4" title="This is a section4" level="4"/>
+ <contents name="images" title="Images" level="1"/>
+ <contents name="commands-not-yet-tested" title="Commands not yet tested" level="1"/>
+ </page>
+ <page name="toc-test.html" href="toc-test.html" status="active" location="toc.qdoc" documented="true" subtype="page" title="TOC" fulltitle="TOC" subtitle=""/>
+ <page name="toc.html" href="toc.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Table of Contents" fulltitle="Table of Contents" subtitle=""/>
+ <page name="qdoctests-qdocfileoutput.html" href="qdoctests-qdocfileoutput.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Testing QDoc output from .qdoc files" fulltitle="Testing QDoc output from .qdoc files" subtitle="" brief="This is a simple page for testing purposes only">
+ <contents name="supported-file-types" title="Supported file types" level="1"/>
+ <contents name="further-information" title="Further information" level="1"/>
+ <contents name="linking" title="Linking" level="1"/>
+ <contents name="qdoc-linking-test" title="QDoc Linking Test" level="1"/>
+ <contents name="linking-to-something-in-a-section-title" title="Linking to something in a section title" level="1"/>
+ </page>
+ <page name="qdoctests-qdocfileoutput-linking.html" href="qdoctests-qdocfileoutput-linking.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Testing QDoc's link command" fulltitle="Testing QDoc's link command" subtitle="" brief="This is a page for testing QDoc's link command">
+ <target name="link-test-target"/>
+ <keyword name="qdoc-linking-test" title="QDoc Linking Test"/>
+ <contents name="link-targets" title="Link targets" level="1"/>
+ </page>
+ <page name="crash.html" href="crash.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="" fulltitle="" subtitle=""/>
+ </namespace>
+</INDEX>
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/tocbreadcrumbs/qdoctests-qdocfileoutput-exhaustive.html b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/qdoctests-qdocfileoutput-exhaustive.html
index ce9c0419f..ce9c0419f 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/tocbreadcrumbs/qdoctests-qdocfileoutput-exhaustive.html
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/qdoctests-qdocfileoutput-exhaustive.html
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/tocbreadcrumbs/qdoctests-qdocfileoutput-linking.html b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/qdoctests-qdocfileoutput-linking.html
index 4b50d9ee2..4b50d9ee2 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/tocbreadcrumbs/qdoctests-qdocfileoutput-linking.html
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/qdoctests-qdocfileoutput-linking.html
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/tocbreadcrumbs/qdoctests-qdocfileoutput.html b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/qdoctests-qdocfileoutput.html
index cbb55db2e..cbb55db2e 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/tocbreadcrumbs/qdoctests-qdocfileoutput.html
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/qdoctests-qdocfileoutput.html
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/qdoctests-qdocmanuallikefileoutput.html b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/qdoctests-qdocmanuallikefileoutput.html
new file mode 100644
index 000000000..e4b120bd0
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/qdoctests-qdocmanuallikefileoutput.html
@@ -0,0 +1,63 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+<!-- qdoctests-outputfromqdocmanuallikefiles.qdoc -->
+ <title>Document Navigation | OutputFromQDocFiles</title>
+</head>
+<body>
+<li id="buildversion">OutputFromQDocFiles - A test project for QDoc build artifacts</li>
+<div class="sidebar">
+<div class="toc">
+<h3 id="toc">Contents</h3>
+<ul>
+<li class="level1"><a href="#commands">Commands</a></li>
+<li class="level2"><a href="#previouspage">\previouspage</a></li>
+</ul>
+</div>
+<div class="sidebar-content" id="sidebar-content"></div></div>
+<h1 class="title">Document Navigation</h1>
+<!-- $$$qdoctests-qdocmanuallikefileoutput.html-description -->
+<div class="descr" id="details">
+<p>The navigation commands...</p>
+<blockquote> <table border="0" cellpadding="0" cellspacing="5" width="100%">
+
+ <tr>
+ <p>
+ [Previous: <a href="15-qdoc-commands-navigation.html#deadlink">
+ Basic Qt</a>]
+ [<a href="15-qdoc-commands-navigation.html#deadlink">Contents</a>]
+ [Next: <a href="15-qdoc-commands-navigation.html#deadlink">
+ Creating Dialogs</a>]
+ </p>
+
+ <h1 align="center">Getting Started<br /></h1>
+
+ <p>
+ This chapter shows how to combine basic C++ with the
+ functionality provided by Qt to create a few small graphical
+ interface (GUI) applications.
+ </p>
+
+ <p>
+ [Previous: <a href="15-qdoc-commands-navigation.html#deadlink">
+ Basic Qt</a>]
+ [<a href="15-qdoc-commands-navigation.html#deadlink">Contents</a>]
+ [Next: <a href="15-qdoc-commands-navigation.html#deadlink">
+ Creating Dialogs</a>]
+ </p>
+
+ </table>
+ </blockquote>
+<pre class="cpp" translate="no"><span class="operator">&lt;</span>head<span class="operator">&gt;</span>
+ <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
+ <span class="operator">&lt;</span>link rel<span class="operator">=</span><span class="string">&quot;start&quot;</span> href<span class="operator">=</span><span class="string">&quot;basicqt.html&quot;</span> <span class="operator">/</span><span class="operator">&gt;</span>
+ <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
+<span class="operator">&lt;</span><span class="operator">/</span>head<span class="operator">&gt;</span></pre>
+<h2 id="commands">Commands</h2>
+<span id="previouspage-command"></span><h3 id="previouspage">\previouspage</h3>
+<p>The \previouspage command...</p>
+</div>
+<!-- @@@qdoctests-qdocmanuallikefileoutput.html -->
+</body>
+</html>
diff --git a/src/qdoc/qdoc/tests/generatedoutput/expected_output/tocbreadcrumbs/toc-test.html b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/toc-test.html
index 519109bc9..519109bc9 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/expected_output/tocbreadcrumbs/toc-test.html
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/toc-test.html
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/toc.html b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/toc.html
new file mode 100644
index 000000000..d6f423f49
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/html/toc.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+<!-- qdoctests-outputfromqdocfiles.qdoc -->
+ <title>Table of Contents | OutputFromQDocFiles</title>
+</head>
+<body>
+<li><a href="toc-test.html" translate="no">TOC</a></li>
+<li>Table of Contents</li>
+<li id="buildversion">OutputFromQDocFiles - A test project for QDoc build artifacts</li>
+ <link rel="prev" href="" />
+<p class="naviNextPrevious headerNavi">
+<a class="prevPage" href="">Random page</a>
+</p>
+<div class="sidebar"><div class="sidebar-content" id="sidebar-content"></div></div>
+<h1 class="title">Table of Contents</h1>
+<!-- $$$toc.html-description -->
+<div class="descr" id="details">
+<ul>
+<li><a href="qdoctests-qdocfileoutput.html" translate="no">QDoc Testing</a></li>
+<li><a href="qdoctests-qdocfileoutput-linking.html" translate="no">QDoc Linking Test</a></li>
+<li><a href="toc.html" translate="no">Table of Contents</a></li>
+</ul>
+</div>
+<!-- @@@toc.html -->
+<p class="naviNextPrevious footerNavi">
+<a class="prevPage" href="">Random page</a>
+</p>
+</body>
+</html>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/crash.webxml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/crash.webxml
new file mode 100644
index 000000000..6ffdbcba5
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/crash.webxml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<WebXML>
+ <document>
+ <page name="crash.html" href="crash.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="" fulltitle="" subtitle="">
+ <description>
+ <relation href="toc.html" type="page" meta="next" description="Table of Contents"/>
+ <relation href="qdoctests-qdocfileoutput-linking.html" type="page" meta="previous" description="Testing QDoc's link command"/>
+ <para></para>
+ </description>
+ </page>
+ </document>
+</WebXML>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/images/01.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/images/01.png
new file mode 100644
index 000000000..d73ab969b
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/images/01.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/images/leonardo-da-vinci.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/images/leonardo-da-vinci.png
new file mode 100644
index 000000000..854acb4ca
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/images/leonardo-da-vinci.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/outputfromqdocfiles.index b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/outputfromqdocfiles.index
new file mode 100644
index 000000000..c158f9fac
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/outputfromqdocfiles.index
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE QDOCINDEX>
+<INDEX url="" title="A test project for QDoc build artifacts" version="" project="OutputFromQDocFiles">
+ <namespace name="" status="active" access="public" module="outputfromqdocfiles">
+ <page name="qdoctests-qdocmanuallikefileoutput.html" href="qdoctests-qdocmanuallikefileoutput.html" status="active" location="qdoctests-outputfromqdocmanuallikefiles.qdoc" documented="true" subtype="page" title="Document Navigation" fulltitle="Document Navigation" subtitle="">
+ <target name="previouspage-command"/>
+ <contents name="commands" title="Commands" level="1"/>
+ <contents name="previouspage" title="\previouspage" level="2"/>
+ </page>
+ <page name="qdoctests-qdocfileoutput-exhaustive.html" href="qdoctests-qdocfileoutput-exhaustive.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Exhaustive testing of QDoc commands" fulltitle="Exhaustive testing of QDoc commands" subtitle="" brief="This page is a dumping ground for QDoc commands under test">
+ <contents name="this-is-a-section1" title="This is a section1" level="1"/>
+ <contents name="this-is-a-section2" title="This is a section2" level="2"/>
+ <contents name="this-is-a-section3" title="This is a section3" level="3"/>
+ <contents name="this-is-a-section4" title="This is a section4" level="4"/>
+ <contents name="images" title="Images" level="1"/>
+ <contents name="commands-not-yet-tested" title="Commands not yet tested" level="1"/>
+ </page>
+ <page name="toc-test.html" href="toc-test.html" status="active" location="toc.qdoc" documented="true" subtype="page" title="TOC" fulltitle="TOC" subtitle=""/>
+ <page name="toc.html" href="toc.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Table of Contents" fulltitle="Table of Contents" subtitle=""/>
+ <page name="qdoctests-qdocfileoutput.html" href="qdoctests-qdocfileoutput.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Testing QDoc output from .qdoc files" fulltitle="Testing QDoc output from .qdoc files" subtitle="" brief="This is a simple page for testing purposes only">
+ <contents name="supported-file-types" title="Supported file types" level="1"/>
+ <contents name="further-information" title="Further information" level="1"/>
+ <contents name="linking" title="Linking" level="1"/>
+ <contents name="qdoc-linking-test" title="QDoc Linking Test" level="1"/>
+ <contents name="linking-to-something-in-a-section-title" title="Linking to something in a section title" level="1"/>
+ </page>
+ <page name="qdoctests-qdocfileoutput-linking.html" href="qdoctests-qdocfileoutput-linking.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Testing QDoc's link command" fulltitle="Testing QDoc's link command" subtitle="" brief="This is a page for testing QDoc's link command">
+ <target name="link-test-target"/>
+ <keyword name="qdoc-linking-test" title="QDoc Linking Test"/>
+ <contents name="link-targets" title="Link targets" level="1"/>
+ </page>
+ <page name="crash.html" href="crash.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="" fulltitle="" subtitle=""/>
+ </namespace>
+</INDEX>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocfileoutput-exhaustive.webxml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocfileoutput-exhaustive.webxml
new file mode 100644
index 000000000..25e3dcc9e
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocfileoutput-exhaustive.webxml
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<WebXML>
+ <document>
+ <page name="qdoctests-qdocfileoutput-exhaustive.html" href="qdoctests-qdocfileoutput-exhaustive.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Exhaustive testing of QDoc commands" fulltitle="Exhaustive testing of QDoc commands" subtitle="" brief="This page is a dumping ground for QDoc commands under test">
+ <contents name="this-is-a-section1" title="This is a section1" level="1"/>
+ <contents name="this-is-a-section2" title="This is a section2" level="2"/>
+ <contents name="this-is-a-section3" title="This is a section3" level="3"/>
+ <contents name="this-is-a-section4" title="This is a section4" level="4"/>
+ <contents name="images" title="Images" level="1"/>
+ <contents name="commands-not-yet-tested" title="Commands not yet tested" level="1"/>
+ <description>
+ <relation href="qdoctests-qdocfileoutput-linking.html" type="page" meta="next" description="Testing QDoc's link command"/>
+ <relation href="qdoctests-qdocfileoutput.html" type="page" meta="previous" description="Testing QDoc output from .qdoc files"/>
+ <brief>This page is a dumping ground for QDoc commands under test.</brief>
+ <section id="this-is-a-section1">
+ <heading level="1">This is a section1</heading>
+ </section>
+ <section id="this-is-a-section2">
+ <heading level="2">This is a section2</heading>
+ </section>
+ <section id="this-is-a-section3">
+ <heading level="3">This is a section3</heading>
+ </section>
+ <section id="this-is-a-section4">
+ <heading level="4">This is a section4</heading>
+ </section>
+ </description>
+ </page>
+ </document>
+ <badcode>This is bad code</badcode>
+ <para>This text should have a line break riiiiight noooow.</para>
+ <para>
+ <bold>All your text belong to bold</bold> ...And this is an examble of only <bold>bold</bold> being, well, bold.</para>
+ <dots indent="4">...</dots>
+ <para>This a caption</para>
+ <legalese>
+ <para>Lorem legal ipsum</para>
+ </legalese>
+ <quote>
+ <para>This is a quotation.</para>
+ </quote>
+ <raw format="HTML"> &lt;html&gt;&lt;body&gt;This is &lt;b&gt;raw&lt;/b&gt;. Like the &lt;h1&gt;Eddie Murphy&lt;/h1&gt; movie. Just not as funny.&lt;/body&gt;&lt;/html&gt;
+ </raw>
+ <para>Look, ma! I made a sidebar!</para>
+ <table>
+ <row>
+ <item>
+ <para>Table item in a table row</para>
+ </item>
+ </row>
+ <row>
+ <item>
+ <para>Another item in a different row</para>
+ </item>
+ </row>
+ </table>
+ <para>
+ <bold>Important:</bold> This is really important.</para>
+ <para>
+ <bold>Note:</bold> The code above doesn't compile</para>
+ <section id="images">
+ <heading level="1">Images</heading>
+ <para>An image without any text:</para>
+ <image href="images/leonardo-da-vinci.png"/>
+ <para>An image with just an alternative text:</para>
+ <image href="images/leonardo-da-vinci.png"/>
+ <para>An image with alternative text and 1-atom caption:</para>
+ <image href="images/leonardo-da-vinci.png"/>
+ <para>Image caption</para>
+ <para>An image with alternative text and 2-atom caption:</para>
+ <image href="images/leonardo-da-vinci.png"/>
+ <para>Image caption with <bold>bold</bold> text</para>
+ <para>A bordered image:</para>
+ <image href="images/leonardo-da-vinci.png"/>
+ <para>A bordered image with a caption:</para>
+ <image href="images/leonardo-da-vinci.png"/>
+ <para>Screenshot of the System Tray Icon</para>
+ <para>An inline image:</para>
+ <para>The is a paragraph containing an <inlineimage href="images/01.png"/> inline image to test if qdoc handles them properly, without considering rest of the line as alt text for the image.</para>
+ <para>An inline image with alt text:</para>
+ <para>Here is another example of <inlineimage href="images/01.png"/> inline image with alternative text, which should be added as an attribute to the inline image.</para>
+ <para>File quoting:</para>
+ <quotefromfile>main.cpp</quotefromfile>
+ <skipto>/if \(/</skipto>
+ <printuntil>/^ \}/</printuntil>
+ </section>
+ <section id="commands-not-yet-tested">
+ <heading level="1">Commands not yet tested</heading>
+ <para>
+ <bold>Warning:</bold> The following commands have yet to be tested: footnote link sincelist header index topicref // or just don’t care, remove it inlineimage printline printto quotefile skipline skipuntil span snippet codeline overload sub sup tableofcontents tt uicontrol endmapref endomit underline unicode</para>
+ </section>
+</WebXML>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocfileoutput-linking.webxml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocfileoutput-linking.webxml
new file mode 100644
index 000000000..d2c53d965
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocfileoutput-linking.webxml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<WebXML>
+ <document>
+ <page name="qdoctests-qdocfileoutput-linking.html" href="qdoctests-qdocfileoutput-linking.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Testing QDoc's link command" fulltitle="Testing QDoc's link command" subtitle="" brief="This is a page for testing QDoc's link command">
+ <target name="link-test-target"/>
+ <keyword name="qdoc-linking-test" title="QDoc Linking Test"/>
+ <contents name="link-targets" title="Link targets" level="1"/>
+ <description>
+ <relation href="" type="page" meta="next" description="Random page"/>
+ <relation href="qdoctests-qdocfileoutput-exhaustive.html" type="page" meta="previous" description="Exhaustive testing of QDoc commands"/>
+ <brief>This is a page for testing QDoc's link command.</brief>
+ <target name="link-test-target"/>
+ <section id="link-targets">
+ <heading level="1">Link targets</heading>
+ <para>Valid parameters for the link command (<teletype type="highlighted">\l</teletype>) are page and section titles, targets defined with \target or \keyword commands, and API reference keywords (types, methods, namespaces, and so on).</para>
+ </section>
+ </description>
+ </page>
+ </document>
+</WebXML>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocfileoutput.webxml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocfileoutput.webxml
new file mode 100644
index 000000000..b6b8dc6cb
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocfileoutput.webxml
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<WebXML>
+ <document>
+ <page name="qdoctests-qdocfileoutput.html" href="qdoctests-qdocfileoutput.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Testing QDoc output from .qdoc files" fulltitle="Testing QDoc output from .qdoc files" subtitle="" brief="This is a simple page for testing purposes only">
+ <contents name="supported-file-types" title="Supported file types" level="1"/>
+ <contents name="further-information" title="Further information" level="1"/>
+ <contents name="linking" title="Linking" level="1"/>
+ <contents name="qdoc-linking-test" title="QDoc Linking Test" level="1"/>
+ <contents name="linking-to-something-in-a-section-title" title="Linking to something in a section title" level="1"/>
+ <description>
+ <relation href="qdoctests-qdocfileoutput-exhaustive.html" type="page" meta="next" description="Exhaustive testing of QDoc commands"/>
+ <brief>This is a simple page for testing purposes only.</brief>
+ <para>QDoc generates documentation for software projects. It does this by extracting <italic>QDoc comments</italic> from project source files. QDoc comments are signified by a C-style-like comment tag followed by an exclamation point, like this: <teletype type="highlighted">/*!</teletype> <teletype type="highlighted">This text is contained within QDoc comment tags.</teletype> <teletype type="highlighted">*/</teletype>.</para>
+ <section id="supported-file-types">
+ <heading level="1">Supported file types</heading>
+ <para>QDoc parses <teletype type="highlighted">.cpp</teletype> and <teletype type="highlighted">.qdoc</teletype> files. It does extract comments from header (<teletype type="highlighted">.h</teletype>) files.</para>
+ </section>
+ <section id="further-information">
+ <heading level="1">Further information</heading>
+ <para>This test document is written with the purpose of testing the output QDoc generates when parsing <teletype type="highlighted">.qdoc</teletype> files. It is fairly simple and makes use of a limited subset of QDoc's command. Those commands are:</para>
+ <list type="bullet">
+ <item>
+ <para>
+ <teletype type="highlighted">\page</teletype></para>
+ </item>
+ <item>
+ <para>
+ <teletype type="highlighted">\title</teletype></para>
+ </item>
+ <item>
+ <para>
+ <teletype type="highlighted">\brief</teletype></para>
+ </item>
+ <item>
+ <para>
+ <teletype type="highlighted">\e</teletype> (for emphasizing &quot;QDoc comments&quot;)</para>
+ </item>
+ <item>
+ <para>
+ <teletype type="highlighted">\c</teletype> (for multiple monospace-formatted entries)</para>
+ </item>
+ <item>
+ <para>
+ <teletype type="highlighted">\section1</teletype></para>
+ </item>
+ <item>
+ <para>
+ <teletype type="highlighted">\list</teletype></para>
+ </item>
+ <item>
+ <para>
+ <teletype type="highlighted">\li</teletype></para>
+ </item>
+ <item>
+ <para>
+ <teletype type="highlighted">\endlist</teletype></para>
+ </item>
+ </list>
+ </section>
+ <section id="linking">
+ <heading level="1">Linking</heading>
+ <para>There are multiple ways to create hyperlinks to other topics:</para>
+ <list type="bullet">
+ <item>
+ <para>
+ <link raw="Testing QDoc's link command" href="qdoctests-qdocfileoutput-linking.html" type="page" page="Testing QDoc's link command">Linking to a page title</link></para>
+ </item>
+ <item>
+ <para>
+ <link raw="Link targets" href="qdoctests-qdocfileoutput-linking.html#link-targets" type="page" page="Testing QDoc's link command">Linking to a section title</link></para>
+ </item>
+ <item>
+ <para>
+ <link raw="link-test-target" href="qdoctests-qdocfileoutput-linking.html#link-test-target" type="page" page="Testing QDoc's link command">Linking using a \target string</link></para>
+ </item>
+ <item>
+ <para>
+ <link raw="QDoc Linking Test" href="qdoctests-qdocfileoutput-linking.html" type="page" page="Testing QDoc's link command">Linking using a \keyword string</link></para>
+ </item>
+ </list>
+ </section>
+ <section id="qdoc-linking-test">
+ <heading level="1">QDoc Linking Test</heading>
+ <para>This section title is overridden by another target which takes precedence.</para>
+ </section>
+ <section id="linking-to-something-in-a-section-title">
+ <heading level="1">Linking to <link raw="Further information" href="qdoctests-qdocfileoutput.html#further-information" type="page" page="Testing QDoc output from .qdoc files">something</link> in a section title</heading>
+ <para>This is allowed but a questionable practice.</para>
+ <para>
+ <bold>Note:</bold> You're looking at detailed information.</para>
+ </section>
+ </description>
+ </page>
+ </document>
+</WebXML>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocmanuallikefileoutput.webxml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocmanuallikefileoutput.webxml
new file mode 100644
index 000000000..4502dcf7f
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/qdoctests-qdocmanuallikefileoutput.webxml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<WebXML>
+ <document>
+ <page name="qdoctests-qdocmanuallikefileoutput.html" href="qdoctests-qdocmanuallikefileoutput.html" status="active" location="qdoctests-outputfromqdocmanuallikefiles.qdoc" documented="true" subtype="page" title="Document Navigation" fulltitle="Document Navigation" subtitle="">
+ <target name="previouspage-command"/>
+ <contents name="commands" title="Commands" level="1"/>
+ <contents name="previouspage" title="\previouspage" level="2"/>
+ <description>
+ <para>The navigation commands...</para>
+ <quote>
+ <raw format="HTML"> &lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;5&quot; width=&quot;100%&quot;&gt;
+
+ &lt;tr&gt;
+ &lt;p&gt;
+ [Previous: &lt;a href=&quot;15-qdoc-commands-navigation.html#deadlink&quot;&gt;
+ Basic Qt&lt;/a&gt;]
+ [&lt;a href=&quot;15-qdoc-commands-navigation.html#deadlink&quot;&gt;Contents&lt;/a&gt;]
+ [Next: &lt;a href=&quot;15-qdoc-commands-navigation.html#deadlink&quot;&gt;
+ Creating Dialogs&lt;/a&gt;]
+ &lt;/p&gt;
+
+ &lt;h1 align=&quot;center&quot;&gt;Getting Started&lt;br /&gt;&lt;/h1&gt;
+
+ &lt;p&gt;
+ This chapter shows how to combine basic C++ with the
+ functionality provided by Qt to create a few small graphical
+ interface (GUI) applications.
+ &lt;/p&gt;
+
+ &lt;p&gt;
+ [Previous: &lt;a href=&quot;15-qdoc-commands-navigation.html#deadlink&quot;&gt;
+ Basic Qt&lt;/a&gt;]
+ [&lt;a href=&quot;15-qdoc-commands-navigation.html#deadlink&quot;&gt;Contents&lt;/a&gt;]
+ [Next: &lt;a href=&quot;15-qdoc-commands-navigation.html#deadlink&quot;&gt;
+ Creating Dialogs&lt;/a&gt;]
+ &lt;/p&gt;
+
+ &lt;/table&gt;
+ </raw>
+ </quote>
+ <code>&lt;head&gt;
+ ...
+ &lt;link rel=&quot;start&quot; href=&quot;basicqt.html&quot; /&gt;
+ ...
+&lt;/head&gt;</code>
+ <section id="commands">
+ <heading level="1">Commands</heading>
+ <target name="previouspage-command"/>
+ </section>
+ <section id="previouspage">
+ <heading level="2">\previouspage</heading>
+ <para>The \previouspage command...</para>
+ </section>
+ </description>
+ </page>
+ </document>
+</WebXML>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/toc-test.webxml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/toc-test.webxml
new file mode 100644
index 000000000..767973fc6
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/toc-test.webxml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<WebXML>
+ <document>
+ <page name="toc-test.html" href="toc-test.html" status="active" location="toc.qdoc" documented="true" subtype="page" title="TOC" fulltitle="TOC" subtitle="">
+ <description>
+ <list type="bullet">
+ <item>
+ <para>
+ <link raw="Testing QDoc output from .qdoc files" href="qdoctests-qdocfileoutput.html" type="page" page="Testing QDoc output from .qdoc files">QDoc Testing</link></para>
+ <list type="bullet">
+ <item>
+ <para>
+ <link raw="Exhaustive testing of QDoc commands" href="qdoctests-qdocfileoutput-exhaustive.html" type="page" page="Exhaustive testing of QDoc commands">Exhaustive testing of QDoc commands</link></para>
+ </item>
+ </list>
+ </item>
+ <item>
+ <para>Linking</para>
+ <list type="bullet">
+ <item>
+ <para>
+ <link raw="QDoc Linking Test" href="qdoctests-qdocfileoutput-linking.html" type="page" page="Testing QDoc's link command">QDoc Linking Test</link></para>
+ <list type="bullet">
+ <item>
+ <para>
+ <link raw="Link targets" href="qdoctests-qdocfileoutput-linking.html#link-targets" type="page" page="Testing QDoc's link command">Link targets</link></para>
+ </item>
+ </list>
+ </item>
+ <item>
+ <para>
+ <link raw="crash.html" href="crash.html" type="page" page="crash.html">Random page</link></para>
+ </item>
+ <item>
+ <para>
+ <link raw="Table of Contents" href="toc.html" type="page" page="Table of Contents">Table of Contents</link></para>
+ </item>
+ </list>
+ </item>
+ </list>
+ </description>
+ </page>
+ </document>
+</WebXML>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/toc.webxml b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/toc.webxml
new file mode 100644
index 000000000..9718191e0
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/expected/webxml/toc.webxml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<WebXML>
+ <document>
+ <page name="toc.html" href="toc.html" status="active" location="qdoctests-outputfromqdocfiles.qdoc" documented="true" subtype="page" title="Table of Contents" fulltitle="Table of Contents" subtitle="">
+ <description>
+ <relation href="" type="page" meta="previous" description="Random page"/>
+ <list type="bullet">
+ <item>
+ <para>
+ <link raw="Testing QDoc output from .qdoc files" href="qdoctests-qdocfileoutput.html" type="page" page="Testing QDoc output from .qdoc files">QDoc Testing</link></para>
+ </item>
+ <item>
+ <para>
+ <link raw="QDoc Linking Test" href="qdoctests-qdocfileoutput-linking.html" type="page" page="Testing QDoc's link command">QDoc Linking Test</link></para>
+ </item>
+ <item>
+ <para>
+ <link raw="Table of Contents" href="toc.html" type="page" page="Table of Contents">Table of Contents</link></para>
+ </item>
+ </list>
+ </description>
+ </page>
+ </document>
+</WebXML>
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/images/01.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/images/01.png
new file mode 100644
index 000000000..d73ab969b
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/images/01.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/images/leonardo-da-vinci.png b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/images/leonardo-da-vinci.png
new file mode 100644
index 000000000..854acb4ca
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/images/leonardo-da-vinci.png
Binary files differ
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/qdoctests-outputfromqdocfiles.qdoc b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/qdoctests-outputfromqdocfiles.qdoc
new file mode 100644
index 000000000..b19905b7e
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/qdoctests-outputfromqdocfiles.qdoc
@@ -0,0 +1,241 @@
+// Copyright (C) 2020 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
+
+/*!
+\if defined(test_navigation)
+ \nextpage {qdoctests-qdocfileoutput-linking.html}{QDoc Linking Test}
+\endif
+
+ \page qdoctests-qdocfileoutput.html
+ \title Testing \PROD output from .qdoc files
+ \brief This is a simple page for testing purposes only.
+
+ QDoc generates documentation for software projects. It does this by
+ extracting \e {QDoc comments} from project source files. QDoc comments are
+ signified by a C-style-like comment tag followed by an exclamation point,
+ like this:
+ \beginqdoc \c {This text is contained within QDoc comment tags.} \endqdoc.
+
+ \section1 Supported file types
+ QDoc parses \c .cpp and \c .qdoc files. It does extract comments from
+ header (\c {.h}) files.
+
+ \section1 Further information
+ This test document is written with the purpose of testing the output QDoc
+ generates when parsing \c .qdoc files. It is fairly simple and makes use of
+ a limited subset of QDoc's command. Those commands are:
+ \list
+ \li \c {\page}
+ \li \c {\title}
+ \li \c {\brief}
+ \li \c {\e} (for emphasizing "QDoc comments")
+ \li \c {\c} (for multiple monospace-formatted entries)
+ \li \c {\section1}
+ \li \c {\list}
+ \li \c {\li}
+ \li \c {\endlist}
+ \endlist
+
+ \section1 Linking
+
+ There are multiple ways to create hyperlinks to other topics:
+
+ \list
+ \li \l {Testing QDoc's link command}{Linking to a page title}
+ \li \l {Link targets}{Linking to a section title}
+ \li \l {link-test-target}{Linking using a \\target string}
+ \li \l {QDoc Linking Test}{Linking using a \\keyword string}
+ \endlist
+
+ \section1 QDoc Linking Test
+
+ This section title is overridden by another target which takes
+ precedence.
+
+ \section1 Linking to \l {Further information}{something} in a section title
+
+ This is allowed but a questionable practice.
+
+ \details {\PROD details}
+ \note You're looking at detailed information.
+ \enddetails
+*/
+
+/*!
+\if defined(test_navigation)
+ \previouspage qdoctests-qdocfileoutput.html \PROD Testing
+ \nextpage Table of Contents
+\endif
+
+ \keyword QDoc Linking Test
+ \page qdoctests-qdocfileoutput-linking.html
+ \title Testing QDoc's link command
+ \brief This is a page for testing QDoc's link command.
+
+ \target link-test-target
+ \section1 Link targets
+
+ Valid parameters for the link command (\c {\l}) are page and section
+ titles, targets defined with \\target or \\keyword commands, and API
+ reference keywords (types, methods, namespaces, and so on).
+*/
+
+/*!
+\if defined(test_navigation)
+ \previouspage {Testing QDoc's link command}{QDoc Linking Test}
+\endif
+
+ \page toc.html
+ \title Table of Contents
+
+ \list
+ \li \l {Testing \PROD output from .qdoc files}{\PROD Testing}
+ \li \l {QDoc Linking Test}
+ \li \l {Table of Contents}
+ \endlist
+*/
+
+/*!
+ \page qdoctests-qdocfileoutput-exhaustive.html
+ \title Exhaustive testing of QDoc commands
+ \brief This page is a dumping ground for QDoc commands under test.
+
+ \section1 This is a section1
+ \section2 This is a section2
+ \section3 This is a section3
+ \section4 This is a section4
+ \endsection4
+ \endsection3
+ \endsection2
+ \endsection1
+
+ \badcode
+ This is bad code
+ \endcode
+
+ This text should have a line break riiiiight \br noooow.
+
+ \b{All your text belong to bold}
+ ...And this is an examble of only \b bold being, well, bold.
+
+ \dots
+
+ \caption This a caption
+
+ \legalese
+ Lorem legal ipsum
+ \endlegalese
+
+ \quotation
+ This is a quotation.
+ \endquotation
+
+ \raw HTML
+ <html><body>This is <b>raw</b>. Like the <h1>Eddie Murphy</h1> movie. Just not as funny.</body></html>
+ \endraw
+
+ \sidebar
+ Look, ma! I made a sidebar!
+ \endsidebar
+
+ \table
+ \row \li Table item in a table row
+ \row \li Another item in a different row
+ \endtable
+
+ \important This is really important.
+
+ \note The code above doesn't compile
+
+ \hr
+
+ \section1 Images
+
+ An image without any text:
+
+ \image leonardo-da-vinci.png
+
+ An image with just an alternative text:
+
+ \image leonardo-da-vinci.png Image alt
+
+ An image with alternative text and 1-atom caption:
+
+ \image leonardo-da-vinci.png Image alt
+ \caption Image caption
+
+ An image with alternative text and 2-atom caption:
+
+ \image leonardo-da-vinci.png Image alt
+ \caption Image caption with \b {bold} text
+
+ A bordered image:
+
+ \borderedimage leonardo-da-vinci.png
+
+ //! A bordered image with alternative text:
+ //!
+ //! \borderedimage leonardo-da-vinci.png Screenshot of the Drill Down Example
+ //! It looks like this macro is not written to handle alternative text (no \2)
+
+ A bordered image with a caption:
+
+ \borderedimage leonardo-da-vinci.png
+ \caption Screenshot of the System Tray Icon
+
+ An inline image:
+
+ The is a paragraph containing an \inlineimage 01.png inline image to test
+ if qdoc handles them properly, without considering rest of the line as
+ alt text for the image.
+
+ An inline image with alt text:
+
+ Here is another example of \inlineimage 01.png {No. 1} inline image with
+ alternative text, which should be added as an attribute to the inline
+ image.
+
+ File quoting:
+
+ \quotefromfile main.cpp
+ \skipto /if \(/
+ \printuntil /^ \}/
+
+ \section1 Commands not yet tested
+
+ \warning The following commands have yet to be tested:
+ footnote
+ link
+ //! Check why above two (when used in this order) cause missing linefeeds on Windows/webxml
+ sincelist
+ header
+ index
+ topicref // or just don’t care, remove it
+ inlineimage
+ printline
+ printto
+ quotefile
+ skipline
+ skipuntil
+ span
+ snippet
+ codeline
+ overload
+ sub
+ sup
+ tableofcontents
+ tt
+ uicontrol
+ endmapref
+ endomit
+ underline
+ unicode
+
+*/
+
+// Empty link target that was known to assert
+/*!
+ \page crash.html
+
+ \l {}
+*/
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/qdoctests-outputfromqdocmanuallikefiles.qdoc b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/qdoctests-outputfromqdocmanuallikefiles.qdoc
new file mode 100644
index 000000000..23f229745
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/qdoctests-outputfromqdocmanuallikefiles.qdoc
@@ -0,0 +1,59 @@
+// Copyright (C) 2022 Thibaut Cuvelier
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// Excerpts from src/qdoc/doc/qdoc-guide.qdoc
+
+/*!
+ \page qdoctests-qdocmanuallikefileoutput.html
+
+ \title Document Navigation
+
+ The navigation commands...
+
+ \quotation
+ \raw HTML
+ <table border="0" cellpadding="0" cellspacing="5" width="100%">
+
+ <tr>
+ <p>
+ [Previous: <a href="15-qdoc-commands-navigation.html#deadlink">
+ Basic Qt</a>]
+ [<a href="15-qdoc-commands-navigation.html#deadlink">Contents</a>]
+ [Next: <a href="15-qdoc-commands-navigation.html#deadlink">
+ Creating Dialogs</a>]
+ </p>
+
+ <h1 align="center">Getting Started<br /></h1>
+
+ <p>
+ This chapter shows how to combine basic C++ with the
+ functionality provided by Qt to create a few small graphical
+ interface (GUI) applications.
+ </p>
+
+ <p>
+ [Previous: <a href="15-qdoc-commands-navigation.html#deadlink">
+ Basic Qt</a>]
+ [<a href="15-qdoc-commands-navigation.html#deadlink">Contents</a>]
+ [Next: <a href="15-qdoc-commands-navigation.html#deadlink">
+ Creating Dialogs</a>]
+ </p>
+
+ </table>
+ \endraw
+ \endquotation
+
+ \code
+ <head>
+ ...
+ <link rel="start" href="basicqt.html" />
+ ...
+ </head>
+ \endcode
+
+ \section1 Commands
+
+ \target previouspage-command
+ \section2 \\previouspage
+
+ The \\previouspage command...
+*/ \ No newline at end of file
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/snippets/main.cpp b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/snippets/main.cpp
new file mode 100644
index 000000000..6993849e4
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/snippets/main.cpp
@@ -0,0 +1,10 @@
+// Copyright (C) 2023 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
+
+int main()
+{
+ if (false) {
+ return 1;
+ }
+ return 0;
+}
diff --git a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/toc.qdoc b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/toc.qdoc
index 6ca61de64..6ca61de64 100644
--- a/src/qdoc/qdoc/tests/generatedoutput/testdata/outputfromqdocfiles/toc.qdoc
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/toc.qdoc
diff --git a/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/tocnavigation.qdocconf b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/tocnavigation.qdocconf
new file mode 100644
index 000000000..ef1bde6ea
--- /dev/null
+++ b/src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/tocnavigation/tocnavigation.qdocconf
@@ -0,0 +1,48 @@
+project = OutputFromQDocFiles
+description = "A test project for QDoc build artifacts"
+buildversion = "$project - $description"
+moduleheader =
+
+sources.fileextensions = "*.qml *.cpp *.qdoc"
+headers.fileextensions = "*.h"
+
+# zero warning policy -- here; allow one which is (qdoc) warning: Can't link to ''
+warninglimit = 1
+warninglimit.enabled = true
+
+# don't write host system-specific paths to index files
+locationinfo = false
+
+outputformats = HTML WebXML DocBook
+HTML.nosubdirs = true
+HTML.outputsubdir = html
+WebXML.quotinginformation = true
+WebXML.nosubdirs = true
+WebXML.outputsubdir = webxml
+DocBook.nosubdirs = true
+DocBook.outputsubdir = docbook
+DocBook.usedocbookextensions = true
+
+# images
+imagedirs = images
+
+sources = qdoctests-outputfromqdocfiles.qdoc \
+ qdoctests-outputfromqdocmanuallikefiles.qdoc \
+ toc.qdoc
+
+exampledirs = snippets
+
+macro.beginqdoc = "\\c {/*!}"
+macro.endqdoc = "\\c */"
+macro.PROD = QDoc
+
+# Macro from qtbase/doc/global/macros.qdocconf
+# The file cannot be included directly, because it requires many
+# variables to be set, like QT_VER
+macro.borderedimage = "\\div {class=\"border\"} \\image \1\n\\enddiv"
+
+defines =
+
+navigation.toctitles = TOC
+navigation.toctitles.inclusive = true
+