453 Commits

Author SHA1 Message Date
Peter Dimov 785ea963b5 Avoid unescaped special character warning in test/Jamfile 2026-04-21 14:46:49 +03:00
Rene Rivera b4bb556d09 Update build & CI for modular Boost. 2024-04-13 10:21:13 -05:00
Peter Dimov 8bd1c3a856 Use boost::core::invoke_swap instead of the deprecated boost::swap 2023-09-30 02:52:51 +03:00
Peter Dimov cd4518ceff Update expected test results for \\localhost\c:\foo\bar (which is an invalid UNC path) 2022-09-05 12:33:37 +03:00
Daniel James 5be5c4268e Don't run the tests at all for C++98/03 2018-01-15 14:09:49 +00:00
Daniel James fce43d223d Add copyright to some files 2018-01-14 20:28:34 +00:00
Daniel James 3974f0a59c Test quickbook_manual-1_4 for 'quick' (#4) 2018-01-14 20:02:12 +00:00
Peter Dimov 207ad4242a Disable quick target when <cxxstd>03 2018-01-14 18:50:10 +02:00
Peter Dimov 828873771a Add quick target to test/Jamfile (used by b2 quick in status) 2018-01-14 04:00:19 +02:00
Daniel James f4c1abc064 Rename gold.html files so inspect doesn't check them for link errors 2018-01-10 13:58:12 +00:00
Daniel James 6221bdf182 Make regen-gold.sh fail if build fails 2018-01-08 17:43:26 +00:00
Daniel James ff6add59d1 Starting to implement docinfo 2018-01-08 17:43:25 +00:00
Daniel James 28ede48a26 Add footnotes-1_7 to test, and regen gold 2018-01-07 21:51:47 +00:00
Daniel James 978aa749f8 Remove some files accidently committed 2017-12-31 17:00:45 +00:00
Daniel James 4682c297c7 Test onehtml generation 2017-12-31 14:21:13 +00:00
Daniel James c55b7ccc9f Decode basic xml markup
Doesn't support things like custom entities, but should be good enough
for the boostbook/docbook that quickbook generates.
2017-12-30 21:10:58 +00:00
Daniel James 19ccdd6cbd Reformat 2017-12-24 12:46:59 +00:00
Daniel James f83bc0fcf6 Prep for clang-format 2017-12-24 12:46:59 +00:00
Daniel James 1d96669b95 Make text-diff.cpp the source of the line compare tests
Apparently the test reporting system can't parse the test output as the
source was the executable. So change it to the source file.

Delete the Jamfile for the line-compare tool, as it doesn't do anything,
and could cause confusion. It would look like it could be used to change
the way that line-compare is built, but it can't.

Also changed to use a different directory for comparison, to avoid a name
clash. This is probably a good idea anyway.
2017-12-23 20:10:49 +00:00
Peter Dimov 225c44d159 Correct update of .all-tests, thereby fixing --dump-tests 2017-12-17 16:57:35 +02:00
Daniel James f1cc90ee1e Fix some Visual C++ warnings 2017-10-15 11:53:12 +01:00
Daniel James 5152ca4d34 That test case is probably fine 2017-10-04 18:55:46 +01:00
Daniel James 916f106afa Use string_view instead of silly string rvalue optimisation
And lightly test the functions.
2017-10-04 18:49:33 +01:00
Daniel James b11a35b5ce Rename linkify_test to utils_test 2017-10-04 18:47:29 +01:00
Daniel James 476aa61984 Improved file_path_to_url for windows edge cases
Really not sure about this, but filesystem doesn't have great support
anyway[1], and this handles some unusual cases better.

[1]: https://svn.boost.org/trac10/ticket/5448
2017-10-04 18:05:00 +01:00
Daniel James e0ec41683d Deal with xinclude == xmlbase
It's a silly edge case as you can't xinclude directories, but might as well
make it a little more sane.
2017-10-04 03:08:21 +01:00
Daniel James c5b8ad6d38 Fix xmlbase when it's the same as current xinclude base 2017-10-04 02:11:35 +01:00
Daniel James 974b5b5f01 This was fixed in 4ff7f3a9 2017-10-03 19:44:00 +01:00
Daniel James 8bad86f81c Throw an exception for invalid globs in 'glob'
Before the idea was that check_glob would throw out any invalid globs, and then
if they somehow got through glob would just fail to match. I now feel it would
be better if it also complained on finding an invalid glob, although it will
only detect an invalid glob if the pattern matches up to that point.
2017-10-03 19:44:00 +01:00
Daniel James 595182b0c7 Stop normalizing the path of dependencies
It was incorrect because it was following symlinks. That means that a
build system wouldn't detect is a symlink changed. It's probably best
not to do any normalization at all and leave it to the build system.
2017-09-15 19:21:30 +01:00
Daniel James b913b0192b Some path_difference tests + fix non-existent directories 2017-08-09 20:12:56 +01:00
Daniel James 7ef7909d5e Add tests for normalize_path 2017-08-09 20:12:56 +01:00
Daniel James ba64e37ae4 Rename file_path_to_url_test.cpp to path_test.cpp 2017-08-09 20:12:56 +01:00
Daniel James 433295308e Restore file_path_to_url_test 2017-08-09 20:12:55 +01:00
Daniel James 18b37e4045 Don't write out empty section titles
Docbook requires sections to have titles, but if they're empty it writes
out a '???' title, having not title seems cleaner. Can be fooled by
putting empty phrase markup in the title, so might need to be a little
smarter about that.

I'm considering adding a warning, perhaps an error in strict mode.
2017-05-22 01:10:54 +01:00
Daniel James af70e87f44 Reimplement quickbook::cleanup to be dependency free
Specifically std::auto_ptr. The master branch of spirit still dependends
on std::auto_ptr, but develop doesn't, and hopefully that will be merged
eventually.

This implementation uses a linked list, which isn't the fastest
implementation but is simple to implement.
2017-05-20 17:09:33 +01:00
Daniel James 770840b926 In linkify, only add lins when there aren't any already
It was trying to link unlinked text, but got in a bit of a mess when
links are nested in other markup. Also reads the 'quickbook-escape'
content, now it's just checking for the presence of links that should be
fine.
2017-05-11 22:11:11 +01:00
Daniel James 9d98653e9b Try to be smarter about adding links to section titles
When adding links, don't add them around other links. If there's
anything outside of existing links, they'll still get linked. Although,
maybe it would be better to only add link tags when the title doesn't
contain any links. This might be over-complicated and confusing.
2017-05-11 12:55:14 +01:00
Daniel James 98f76b00fd Make stray square brackets an error
E.g. if you get the name of a template wrong, it will currently just
write it out, but now with strict mode it'll be an error.
2017-04-25 21:49:45 +01:00
Daniel James 38af51de0e Make a missing [endsect] an error in strict mode
An extra [endsect] is already an error, so this probably should be as
well, but for now it's only an error in strict mode.
2017-04-25 21:39:55 +01:00
Daniel James 56eb172288 Command line option for strict mode
Doesn't actually do anything yet. Also implemented a dummy '--strict'
command line option in text_diff.cpp, as I couldn't work out how to pass
'--strict' to quickbook and not to text_diff in the tests. So instead
just make text_diff ignore it.
2017-04-25 21:36:40 +01:00
Daniel James 703989a8cd Add optional ids to 'endsect'
Trickier than I thought it would be, I probably over-encapsulated
document_state.
2017-04-22 11:58:42 +01:00
Daniel James 26b7c0d887 Implement negative conditional generation 2017-04-22 11:58:42 +01:00
Daniel James 38e5c35294 Wrapper for boost::string_view
Can be constructed from an rvalue std::string.
2017-03-26 19:55:21 +01:00
Daniel James 689b29531e Fix name of duplicate 'quickbook' doc info tag 2017-02-12 11:36:13 +00:00
Daniel James c87178fb53 Fix crash calling template with no arguments
Only happend when quickbook file version < 1.5
2017-02-12 11:36:13 +00:00
Daniel James 16bbd896f3 Fix quickbook versions on template_arguments fail tests 2017-02-12 11:36:13 +00:00
Daniel James 87722232e6 Test some more command line flags. 2017-02-12 11:09:24 +00:00
Daniel James 3e2fe6cc2b Fix --no-self-linked-headers option 2017-02-12 11:09:08 +00:00
Daniel James 066177a959 Move file_paths_to_url include include_paths.cpp
Which messes up testing. `include_paths.cpp` depends on `quickbook.cpp`
which depends on `program_options`. These kind of problems are mainly
with the use of globals, so I'll need to sort that out sooner or later.
2015-12-20 12:40:58 +00:00