101 Commits

Author SHA1 Message Date
Christian Mazakas
c37d9a3bf1 Clean up tests to properly use boost::unordered::piecewise_construct and ensure it's a humble alias for its std counterpart 2023-09-29 08:29:06 -07:00
Christian Mazakas
b4884b7201 Relocate piecewise_construct to impl file, remove unnecessary fwd header 2023-09-27 12:21:15 -07:00
Christian Mazakas
9b1ec6cbce Reinstate boost::unordered::piecewise_construct
Maintain backwards-compatibility for users instead of forcing them to change to `std::`
2023-09-27 11:44:45 -07:00
Christian Mazakas
9d8beff688 Remove dependency on Boost.Tuple 2023-09-27 11:44:45 -07:00
Christian Mazakas
33dbd7cd76 Remove dependency on Boost.Move 2023-09-27 11:44:44 -07:00
Christian Mazakas
4cd1827104 Remove BOOST_RV_REF 2023-09-27 11:44:44 -07:00
Christian Mazakas
8782036a88 Remove BOOST_UNORDERED_HAVE_PIECEWISE_CONSTRUCT 2023-09-27 11:44:44 -07:00
Christian Mazakas
8cbd9ad80a Remove BOOST_NO_CXX11_HDR_INITIALIZER_LIST checks 2023-09-27 11:44:44 -07:00
Christian Mazakas
adb91ac06d Replace boost::move with std::move 2023-09-27 11:44:44 -07:00
Christian Mazakas
f0d10308e3 Add foa-based node containers to insert_tests 2023-02-14 10:55:35 -08:00
Christian Mazakas
e0b680ac29 Update insert(Iterator, Iterator) overloads to use emplace internally instead of insert()'ing 2022-10-21 11:24:34 -07:00
Christian Mazakas
703f8d1065 Delete boost-level headers as they're no longer considered idiomatic and update all tests to use the test/helpers/unorderd.hpp header where applicable 2022-10-20 15:25:40 -07:00
Christian Mazakas
ac3520791e Clean up insert_tests 2022-09-29 11:17:22 -07:00
Christian Mazakas
c37cfacb44 Finally get insert_tests passing for flat map/set 2022-09-28 13:49:38 -07:00
Christian Mazakas
450c915284 Get insert_tests passing under sanitizers 2022-09-27 14:25:57 -07:00
Christian Mazakas
892e437428 Restructure insert_tests invocations 2022-09-27 10:34:04 -07:00
Christian Mazakas
505b060637 Update insert_tests to handle new open-addressing table implementation 2022-09-26 15:17:54 -07:00
Daniel James
cfd4bacc2c Stop using BOOST_DEDUCED_TYPENAME
We no longer support any of the compilers that require it. I'd be very
surprised if anything was working on them.
2018-01-27 09:39:59 +00:00
Daniel James
613f154d47 Improved test formatting 2017-10-09 12:34:47 +01:00
Daniel James
6b5b968b97 Format with clang-format 4.0 2017-10-05 10:54:22 +01:00
Daniel James
0676b4f4ca Change clang format indentation + .editorconfig file 2017-06-11 20:55:59 +01:00
Daniel James
ee9a5a2c77 Add a configuration macro for Sun C++ workarounds 2017-05-16 19:01:50 +01:00
Daniel James
242e91a9fd "Sub-test" reporting mechanism 2017-05-10 19:02:47 +01:00
Daniel James
76e7322262 Use streams from lightweight test 2017-05-10 19:02:47 +01:00
Daniel James
3c42138e45 Fix testing piecewise_construct and tuple
For when std::piecewise_construct is available, but std::tuple isn't. In
order to test better, just repeat the tests with the four possible
combinations.
2017-05-08 18:42:53 +01:00
Daniel James
cae6b121b2 Improve test coverage a little 2017-04-28 21:26:21 +01:00
Daniel James
bfcdd51b4a Fix try_emplace overload 2017-04-28 09:53:50 +01:00
Daniel James
7a0a598649 Don't track construction when using boost::tuple
Because it doesn't quiet work on C++11 compilers onwards.
2017-04-18 10:14:26 +01:00
Daniel James
cafd236a18 Test more memory tracking 2017-04-18 10:14:26 +01:00
Daniel James
5f5f8ef1e4 Implement try_emplace 2017-02-27 03:59:02 +00:00
Daniel James
958d206bb6 Implement insert_or_assign. 2017-02-27 03:59:02 +00:00
Daniel James
bf5ef9824d Reformat with clang-format 2017-02-19 13:05:17 +00:00
Daniel James
b2f2fdc2f3 Prevent clang-format sorting some test includes 2017-02-19 13:05:17 +00:00
Daniel James
6071f9a08b Stop testing no arg emplace when not available 2016-10-22 09:49:14 +01:00
Daniel James
74abdd6973 Replace boost::next with a simpler version
Less optimized, but hopefully it won't cause any warnings.
2016-10-11 13:36:41 +01:00
Daniel James
a316d3fa46 Fix more warnings 2016-10-11 10:07:07 +01:00
Daniel James
147885fec4 Add another random generation style.
This time for a more limited range of values so that equal values turn
up more often.  This is a bit shoddy, but seems like the best way to
improve the existing tests without too much effort.
2016-10-06 21:52:19 +01:00
Daniel James
b1588929cc Fix another sign conversion warning. 2016-10-05 13:52:33 +01:00
Daniel James
71d19820ac Fix signed conversion warnings. 2016-10-05 09:45:53 +01:00
Daniel James
dadb4486ee Fix calls to std::rand in tests 2016-10-04 15:52:47 +01:00
Daniel James
a93331dd96 Fix new emplace tests. 2016-10-01 13:51:25 +01:00
Daniel James
b881bcfee3 More insert and erase tests 2016-09-18 12:22:48 +01:00
Daniel James
1c606980ec Update tests for standard changes involving bucket count.
It seems my defect report was accepted at some point, and they tweaked
the requirements involving bucket counts. This also makes it possible to
have a bucket count of 0, which I think wasn't allowed in the past. I
don't think I'll change this implementation to do so, but I'd like to be
able to run these tests against standard implementations, so I'm
starting to take that into account.

I believe these changes were made after the C++14 standard, but I've
always been tracking the draft standards, so that doesn't really matter.
2016-09-18 12:22:48 +01:00
Daniel James
1d4845d6b8 Stop using predef in test. 2016-05-26 22:39:47 +01:00
Daniel James
6b7cecb9d3 Workaround initialiser list bug in gcc 4.4. 2014-08-02 03:11:44 +01:00
Daniel James
94071cc6e8 Clean up warnings. Fixes trac #9377. 2014-01-26 22:57:24 +00:00
Daniel James
7d0c6d2425 Unused typedef. 2013-12-15 17:11:26 +00:00
Daniel James
0a552a47cb Disable test for Visual C++ 12. 2013-12-15 17:11:25 +00:00
Daniel James
621c1523c0 Fix potential msvc 12 workaround.
[SVN r86433]
2013-10-25 22:21:51 +00:00
Daniel James
b4d62e4670 Attempt to work around Visual C++ initializer list overload bug.
I'm hoping that these templated initializer lists will be considered a better
overload than the others. I have no idea if it will actually work, this is a
real shot in the dark.

The enable_if checks should probably be for implicit conversion, there might
be a chance this could override a valid call when there's an explicit
conversion.

[SVN r86419]
2013-10-24 18:11:35 +00:00