summaryrefslogtreecommitdiffstats
path: root/testing
Commit message (Collapse)AuthorAgeFilesLines
* XML output: avoid warnings with scoped enum values in anonymous namespaces.Vladimír Vondruš2017-12-292-0/+57
| | | | | | | | | | | | | | | | | | | | | | When a C++11 `enum class` was present in an anonymous namespace (usually in *.cpp files), the XML output was emitting warnings similar to the following: Internal inconsistency: member False does not belong to any container! And the XML output was rendering bogus IDs for enum values starting with `dummy_`, such as: dummy_1a96ab6574751fdf6a53ceec8a3896c45daf8320b26d30ab433c5a54546d21f414c The fix is to call memberOutputFileBase() on the enumeration itself and not on the enum value, that way it provides correct file base that corresponds to file base of the enumeration. There's also a new test that checks this. Note: this assumes that enum values belong to the same compound as enums themselves. In my experience that was always the case and there's no broken test after this change, so I hope I didn't break anything.
* Merge branch 'variadic' of https://github.com/mehw/doxygen into mehw-variadicDimitri van Heesch2017-12-278-0/+956
|\
| * Add variadic template function regression testsMatthew White2017-08-034-0/+808
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * testing/069_link_variadic_template.cpp: new file, @link regression test for variadic template function * testing/069/069__link__variadic__template_8cpp.xml: new file, expected @link regression test result for variadic template function * testing/070_ref_variadic_template.cpp: new file, @ref regression test for variadic template function * testing/070/070__ref__variadic__template_8cpp.xml: new file, expected @ref regression test result for variadic template function At the time of writing, the part between <> is totally ignored: func<Args...>(Args... args) is interpreted as func(Args... args). Beware that a function parameter with either a & or * operator, e.g. 'const Args&... args', requires @link and @ref to use such parameter as verbatim, i.e. {@link func(const Args&... args)}. At the time of writing, the form {@link func(const Args&...)} will fail, unless the function parameter was declared just as 'const Args&...'.
| * Add variadic function arguments '...' regression testsMatthew White2017-08-034-0/+148
| | | | | | | | | | | | | | | | | | | | | | * testing/067_link_varargs.cpp: new file, @link regression test for variadic function arguments '...' * testing/067/067__link__varargs_8cpp.xml: new file, expected @link regression test result for variadic function arguments '...' * testing/068_ref_varargs.cpp: new file, @ref regression test for variadic function arguments '...' * testing/068/068__ref__varargs_8cpp.xml: new file, expected @ref regression test result for variadic function arguments '...'
* | Merge pull request #627 from mosra/xml-strong-typed-enumsDimitri van Heesch2017-12-243-1/+34
|\ \ | | | | | | Full support for strong and typed enums in the XML output
| * | Provide information about enum type "strongness" in the XML output.Vladimír Vondruš2017-11-292-2/+2
| | | | | | | | | | | | | | | | | | | | | There's a new boolean `strong` attribute on the `<memberdef>` element that defines whether the enum is a classic or a strong one. Tests were updated to verify both cases.
| * | Expose underlying enum type in the XML output.Vladimír Vondruš2017-11-293-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The <type> element (used for function return type and variable type) is now reused also for underlying enum type. C++03-style enum types that don't have the underlying type specified have the <type> tag as well, but empty to indicate that the underlying type is unspecified. Added a new test case for this.
* | | Merge pull request #626 from mosra/xml-using-templatesDimitri van Heesch2017-12-242-0/+39
|\ \ \ | | | | | | | | Provide template parameters also for type aliases in the XML output
| * | | Provide template parameters also for type aliases in the XML output.Vladimír Vondruš2017-11-282-0/+39
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Until now, probably due to C++03 assumptions, typedefs and type aliases skipped printing of the template parameter specifications to the XML output. That's now fixed, so the following type alias will properly contain <templateparamlist> in the XML output: template<class T> using Vec = std::vector<T>; Added also a test case that verifies this.
* | | Merge pull request #625 from mosra/xml-tableofcontentsDimitri van Heesch2017-12-242-0/+3
|\ \ \ | | | | | | | | Expose TOC placeholder in XML output
| * | | Expose TOC placeholder in XML output.Vladimír Vondruš2017-11-292-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the XML output for a page was generated the same independently of whether the \tableofcontents command was present in the page source or not. Because of that, the users of the XML output had no chance of knowing whether given page should have a TOC or not. There's now a new <tableofcontents> element that gets added in case the TOC was requested. As it is trivial to populate the TOC on user side by simply enumerating the <sectN> elements, the element is empty and acts just as a boolean.
* | | | Merge pull request #624 from mosra/xml-page-briefdescriptionDimitri van Heesch2017-12-2442-0/+86
|\ \ \ \ | |/ / / | | | | Provide page brief in <briefdescription> of XML output
| * | | Provide page brief in <briefdescription> of XML output.Vladimír Vondruš2017-11-2542-0/+86
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Until now the brief description of pages was prepended to the <detaileddescription> element and the <briefdescription> element was not present at all, which meant there was no easy way to extract the brief description for purposes of creating a page index, for example. With this patch, the brief description is included in both <briefdescription> and <detaileddescription>, thus duplicated, to avoid backwards compatibility issues.
* | | Encode invalid XML characters instead of skipping them.Vladimír Vondruš2017-11-253-2/+4
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The <sp> element in <programlisting> has a new optional attribute `value`, which contains value of given invalid ASCII character. In case of space, the `value` attribute is omitted. Use cases for this: including snippets of *very esoteric* languages, markup that makes use of the advanced ASCII formatting characters or for example highlighting a console output containing ANSI color codes (which is my case, in fact). Regarding backwards compatibility -- as files with such ASCII characters are very rare, I don't expect this minor difference in the output to be a problem. Besides that, such ASCII characters are often replaced by a space in many applications anyway. A test snippet was extended to contain a special character so this difference in behavior could be verified.
* | Propagate language information to all <programlisting> XML elements.Vladimír Vondruš2017-11-196-6/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is based on work done in 141dbfd5a4f79c98da14a1b414c6db4e1b34618b through ed9acb6e1bb81a2eec334180f7b8c1bf0598b444 and makes a few behavioral changes to it. There's a new attribute called `filename` and the `language` was removed, because it could provide misleading information. This allows for more flexibility on the user side. In particular: * For historical reasons, `*.txt` files are marked by Doxygen as C++ (see https://bugzilla.gnome.org/show_bug.cgi?id=760836 for details). In particular, code snippet included from a CMakeLists.txt file would be marked and highlighted as C++. So in this case, the language attribute would be very misleading. * Doxygen is aware only of a very small subset of languages and thus a lot of information can be lost when relying on its extension-to-language-name conversion -- in particular, all extensions that are not recognized are assumed to be C++. On the other hand, putting more effort into its language detection algorithms is not worth the time, as there will always be new languages that fail to detect. So let's leave that on the user of the XML output instead. * Using just file extension is not enough, it has to be a full filename. For example, `*.txt` can be either a plain text file or a `CMakeLists.txt`. * The path is not stripped from the filename, as it also may contain additional information that helps to detect the language better. In addition to that, filenames of code snippets included via the \include command and related are propagated to the <programlisting> element as well. With this change, (1) code snippets using simply \code some code \endcode will not produce any `filename` attribute and it's up to the user what to do -- assume C++, detect language from contents or not highlight anything. <programlisting> some code </programlisting> (2) Code snippets using \code{.cmake} some code \endcode will produce the following: <programlisting filename=".cmake"> some code </programlisting> (3) And finally, \include, \dontinclude and related \skip, \skipline etc. commands \include path/to/some-file.py will produce <programlisting filename="path/to/some-file.py"> some code </programlisting> The tests were updated to check all three cases. On the user side, when using Pygments for example, it's then just a matter of calling pygments.lexers.find_lexer_class_for_filename() with value of the `filename` attribute value and optionally also the code snippet for additional language analysis.
* | Restore 'make tests' ruleDimitri van Heesch2017-10-281-0/+5
| |
* | CMake: use add_test to create a testRolf Eike Beer2017-10-201-4/+2
| | | | | | | | | | This checks the calling from "make tests" to "make test", but lets CMake handle all the rest.
* | CMake: remove unused program searchingRolf Eike Beer2017-10-201-3/+0
| |
* | Use language identifier instead of file extension for language attributeDimitri van Heesch2017-09-281-2/+2
| |
* | fix test to support new programlisting attributeShi Yan2017-09-261-2/+2
|/ | | | | fix unit test to support the new programlisting attribute "language"
* Fix C# property initializer parsingPiotr Szydełko2017-05-202-0/+57
| | | | | | int Property {get; set;} = 23; The parser was ending the property at the closing bracket, which resulted in the initializer being assigned to the following property.
* Bug 770660 - Code snippet always shows line numbers from 1albert-github2016-09-031-3/+3
| | | | | | | | | This patch makes the handling of the \snippet and other commands consistent between the different languages (no line numbers anymore with python) and also introduces analogous to \includelineno the command \snippetlineno. Some non relevant changes: - *code.l Calculation of the end line was incorrect, in case of a snippet the end line was the number of lines of the snippet and not reltive to the start line. - *code.l made consistent over the different laguages, enabling exBlock and inlineFragment - testing/indexpage.xml in test 14 the \snippet command was used with python and giving line numbers, linenumbers are now gone (consistency)
* Fix for changed references due to different removeRedudantWhiteSpace() ↵Dimitri van Heesch2016-03-132-10/+10
| | | | implementation
* Fixed issue escaping ndashes (\--) and mdashes (\---)Dimitri van Heesch2016-02-072-0/+3
|
* Bug 756604 - Unable to prevent a numbered listDimitri van Heesch2015-11-142-1/+3
|
* Merge pull request #381 from albert-github/feature/bug_646002Dimitri van Heesch2015-08-311-14/+2
|\ | | | | Bug 646002 - htmlonly content appears in generated XML output
| * Bug 646002 - htmlonly content appears in generated XML outputalbert-github2015-08-121-14/+2
| | | | | | | | Test has to be adjusted as well.
* | runtests: Simplify dictionary usageBoris Egorov2015-08-201-4/+1
|/
* Problem running tests under Windowsalbert-github2015-06-103-4/+8
| | | | | | The redirection used in the runtests.py script was based on *nix type systems. Corrected for windows. Windows has a different line ending than *nix, resulting in a problem with diff unless the options -b -w are used. Some tests had as directory for some paths a directory . this has been corrected to $INPUTDIR
* Support diff that returns "No differences encountered" when comparing test ↵Dimitri van Heesch2015-06-031-1/+1
| | | | results
* Fixes for running tests and generating docs with cmakeDimitri van Heesch2015-06-032-2/+2
|
* Added missing files and build instructionsDimitri van Heesch2015-05-314-272/+218
|
* Further cmake changesDimitri van Heesch2015-05-3162-239/+153
| | | | | | | - made static build option for all windows targets - made wizard flex interactive - add 64bit support for libiconv on windows build - updated test mechanism
* use cmakeAdrian Negreanu2015-05-152-0/+89
| | | | | | | | | | runtest.pl replaced by testing/test_driver.cmake version.py replaced by cmake/version.cmake lang_cfg.py replaced by cmake/lang_cfg.cmake settings.py implemented in src/CMakeLists.txt increasebuffer.py replaced by defining the YY_BUF_SIZE and YY_READ_BUF_SIZE Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* Fixed typos in comments.orbitcowboy2015-03-254-4/+4
|
* runtests.pl: mmn version has dash as separatorAdrian Negreanu2015-03-101-1/+1
| | | | | Final version can be major.minor.revision-mmn Revision can either be x or x.y.
* Adjust test script for longer version numberDimitri van Heesch2015-01-041-1/+1
|
* various fixes and restructuringDimitri van Heesch2014-12-221-1/+1
|
* Merge branch 'feature/bug_size_latex' of ↵Dimitri van Heesch2014-12-204-7/+10
|\ | | | | | | | | | | | | | | https://github.com/albert-github/doxygen into albert-github-feature/bug_size_latex Conflicts: src/doctokenizer.h src/latexgen.cpp
| * Limit images sizes and make more uniform (LaTeX)albert-github2014-11-284-7/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adjusts some problems regarding image sizes in LaTeX output of doxygen (a.o. Bug 738299 - When using msc or PlantUML, the default latex for the created image should include [width=\linewidth]) this has been done is such a way that all the "image" commands (i.e. image, dot, dotfile, msc, mscfile, diafile, startuml) operate in a similar way / have the same possibilities. - commands.doc Adjusted documentation to reflect changes. - cmdmapper.cpp - cmdmapper.h Added utility function to map command id back to command name - doctokenizer.h - doctokenizer.l Handle Caption and Size indication. Required also that some other rules had to be tightened a bit (like usage of {} in startuml and usage of "" for captions. This was already described in the documentation in this way). - docparser.cpp - docparser.h Created routine to uniformly handle the Caption and size indications and store them in a general way. - latexgen.cpp Replaced graphicx package by adjustbox package (includes graphicx) to support "min width" etc. - doxygen.sty templates\latex Added commands to make commands with and without caption behave similar. - docbookvisitor.cpp - docbookvisitor.h - htmldocvisitor.cpp - latexdocvisitor.cpp - latexdocvisitor.h - printdocvisitor.h - xmldocvisitor.cpp Created routine to uniformly handle the Caption and size indications in a general way. - indexpage.xml (testing\022) - indexpage.xml (testing\031) - class_receiver.xml (testing\037) - class_sender.xml (testing\037) Adjusted example output.
* | Fix bug: language switch command "\~" failed to detect language id which ↵kbinani2014-12-012-0/+22
| | | | | | | | | | | | contains '-' Support language switch for language ids, 'Japanese-en', 'Korean-en', 'Serbian-Cyrillic', and similer langauge ids.
* | Bug 739214 - Cannot make unscoped link to C++ conversion operatorDimitri van Heesch2014-11-162-0/+137
| |
* | Added language attribute to XML output for classes, namespaces, and filesDimitri van Heesch2014-11-1558-58/+58
|/
* Fixed test 021Dimitri van Heesch2014-08-042-2/+2
|
* Disabled/fixed segments that produced doxygen warnings while running the testDimitri van Heesch2014-07-135-64/+24
|
* Merge pull request #197 from wtschueller/fix729092Dimitri van Heesch2014-07-134-0/+118
|\ | | | | Tcl: Bug 729092
| * Tcl: add test code for Bug 729092wtschueller2014-07-134-0/+118
| |
* | Merge pull request #191 from wtschueller/fix_729135Dimitri van Heesch2014-07-132-1/+47
|\ \ | | | | | | Update test 058 because commit 9d315a9 fixes also Bug 729135
| * | Update test 058 because commit 9d315a9 fixes also Bug 729135wtschueller2014-06-202-1/+47
| |/ | | | | | | | | --HG-- extra : rebase_source : aedb08ea08b1b0a983e31a11765c75b56c0b5ceb
* | Merge pull request #190 from wtschueller/fix705503Dimitri van Heesch2014-07-132-0/+89
|\ \ | | | | | | Bug 705503 - TCL: Documentation of oo::define is not working