Boost logo

Boost :

Subject: Re: [boost] [BoostBook] how to automatically test code examples?
From: John Maddock (jz.maddock_at_[hidden])
Date: 2017-10-19 09:22:59


On 19/10/2017 09:01, Hans Dembinski via Boost wrote:
> Hello again,
>
>> It says in the BoostBook documentation http://www.boost.org/doc/libs/1_65_1/doc/html/boostbook.html
>> "The BoostBook format allows testcases to be generated by weaving together program fragments from example programs in the documentation. This capability is integrated with testsuite generation so that example programs are normal tests in BoostBook."
>>
>> That's awesome, I would love to use this feature, but the documentation is not explaining how to actually do that. I found the element "testsuite" which probably does what I want. I went on to scan the Boost repository for this BoostBook element, but couldn't find an example to copy from.
>>
>> Could someone help me out? How do I modify my BoostBook and Jam files to generate tests out of the code examples in the documentation?
> I didn't get any reply so far… was my question stupid? Or is it simply that no one knows? Is the author of BoostBook, Douglas Gregor, not around anymore?
>
> Since I couldn't figure out how to do it with BoostBook, I wrote a Python script which is run by CMake. It parses the documentation for code snippets and writes those to the examples directory, so that the examples are compiled along with the tests. It is not perfect, but it works at least.

Most of us are using quickbook for this, so for example this:
http://www.boost.org/doc/libs/1_55_0/libs/math/doc/html/math_toolkit/bessel/bessel_root.html#math_toolkit.bessel.bessel_root.error_messages_from_bad_input

Is generated from:
https://github.com/boostorg/math/blob/develop/example/bessel_errors_example.cpp

HTH, John.

---
This email has been checked for viruses by AVG.
http://www.avg.com

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk