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
09be9bae04
Use boost::is_nothrow_swappable, now that it's available everywhere
2018-01-27 09:38:19 +00:00
Daniel James
0d34053870
Use boost::to_address in node_handle_tests
2018-01-26 17:47:47 +00:00
Daniel James
66533ace80
Add element_type
to nodes, so that pointer_traits will work
...
Might be better to change the template signature of iterators, but that would
be a disruptive change to make at the moment.
2018-01-26 17:43:06 +00:00
Daniel James
1cc3f680e8
Fix a couple more explicit default constructors for Visual C++ 7.1
2018-01-20 11:49:07 +00:00
Daniel James
f7665a2743
Another attempt to fix insert_exception_tests on Visual C++ 7.1
...
Try extracting the nested template structs.
2018-01-20 08:57:56 +00:00
Daniel James
dc9faddf22
Try to fix constructor_tests on Visual C++ 7.1
...
I'm really not sure why it fails to compile, the error message isn't very
helpful. I assume it might be because allocator1 has an explicit default
constructor, so I tried making it implicit.
2018-01-17 10:40:58 +00:00
Daniel James
e64c5b34df
Try to fix insert_exception_tests on Visual C++ 7.1
...
It doesn't seem to like the nested template structs. If this doesn't work, I'll
try moving them into the top level.
2018-01-17 10:24:07 +00:00
Daniel James
57492c1a94
Make allocator comparison const in allocator_traits test
2018-01-13 20:31:45 +00:00
Daniel James
df8fbca007
Double brackets for BOOST_STATIC_ASSERT
2018-01-13 20:31:45 +00:00
Daniel James
72fb9c7c96
Suppress warnings in noexcept_tests
2018-01-13 20:31:45 +00:00
Daniel James
ce0f16f328
Missing copyright messages
2018-01-10 15:15:09 +00:00
Daniel James
f12009fc61
operator= noexcept support
2018-01-05 17:54:44 +00:00
Daniel James
5854090dc7
Swap noexcept support
...
Not properly supported as we don't have is_nothrow_swappable yet.
2018-01-05 17:48:13 +00:00
Daniel James
daeaf5e98b
Flexible exception testing hash/equal_to
2018-01-05 17:10:13 +00:00
Daniel James
4bffd7a85d
Avoid some warnings
2018-01-04 18:29:31 +00:00
Daniel James
be0acc575f
Implement allocator_traits::is_always_equal
2018-01-03 20:55:40 +00:00
Daniel James
9d558b010d
Reformat
2017-12-28 11:44:57 +00:00
Daniela Engert
64441d2b64
Inheriting std::iterator is deprecated in c++17.
...
Therefore get rid of all of that and replace inheritance by lifting std::iterator's members into the derived class.
Signed-off-by: Daniela Engert <dani@ngrt.de>
2017-12-28 12:01:41 +01:00
Daniel James
07758b7af8
Catch exceptions by reference
2017-12-22 17:02:13 +00:00
Daniel James
b50e0d610f
Initial implementation of template deduction guides
2017-12-19 12:56:51 +00:00
Daniel James
311e126ac4
Remove dependency on iterator
2017-12-03 18:58:52 +00:00
Daniel James
c037169e1a
Update paths for headers moved from detail
2017-12-03 14:24:47 +00:00
Daniel James
9bb861accc
Use std::advance in test::next, and use it instead of boost::next
...
Mainly to avoid warnings from boost::next
2017-12-01 08:35:38 +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
f72b0353d4
Shuffle code around for readability
...
The new indentation made some of the code difficult to read, especially
where macros were concerned, so move things around and add more explicit
namespace declarations.
2017-06-11 20:55:59 +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
dc611fc828
Run fewer test in merge_exception_tests
...
It's timing out on some platforms because it's too slow. This reduces
the tag combinations for 9 to 3, which should reduce the execution time
by a third. Also slightly reduces the count combinations, but that won't
make much of a difference really - the slowest tests are still there
(when the right hand side is large).
2017-05-14 02:59:22 +01:00
Daniel James
a897843f6c
Try to work around an MSVC bug
...
Although, perhaps I shouldn't be generating over 1000 runs for a test.
2017-05-11 00:36:31 +01:00
Daniel James
80de85f217
Move test state + functions into single class
2017-05-10 19:02:47 +01:00
Daniel James
242e91a9fd
"Sub-test" reporting mechanism
2017-05-10 19:02:47 +01:00
Daniel James
ca80237191
Create fewer classes in merge_exception_tests
...
Will need better error reporting capabilities. Makes RUN_TESTS_QUIET
redundant?
2017-05-10 19:02:47 +01:00
Daniel James
b95ef6de04
Generate less output in merge_exception_tests
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
1b0b38a519
try_emplace, insert_or_assign exception tests
2017-05-07 18:47:59 +01:00
Daniel James
9119a42b7d
Factor insert_exception_tests for better code reuse
2017-05-07 18:47:24 +01:00
Daniel James
8af4b37d14
Rewrite insert exception tests
...
Not going to do this for all the tests. It's more effort than I
expected.
2017-05-07 17:54:34 +01:00
Daniel James
31c5b5bfa1
Merge exception tests
2017-05-07 17:54:34 +01:00
Daniel James
0489069419
Use 'limited_range' to catch error in exception tests
...
This would have caught the error fixed in 3fe259a79e
.
2017-05-06 04:47:59 +01:00
Daniel James
597eb5a3fd
Repeat the assign/insert exception tests a few times
2017-05-06 04:47:59 +01:00
Daniel James
3fe259a79e
Fix creating exception::less from exception::equal_to
2017-05-05 12:58:26 +01:00
Daniel James
6ef17a0f0e
Remember to disable exceptions before checking final value
2017-05-05 00:46:07 +01:00
Daniel James
47a8c3fc67
Fix exception handling in rehash_impl
...
And improve tests so they will catch the error, and other similar errors.
2017-05-04 19:30:18 +01:00
Daniel James
d84a57441b
Use the unordered container for the fake merge in merge test
...
The merge tests into containers with unique keys are failing on some
platforms. My guess is that because of differences between ordering of
nodes with equivalent keys that different nodes are being 'merged' in
the unordered containers and the tracker containers. So when creating
the fake merge, use the unordered container as a reference. This is a
little less pure, but should be a good enough test.
2017-05-01 22:16:13 +01:00
Daniel James
338a94e577
Better rvalue emulation support in extractors
...
Means that inserting rvalues into unordered_set/unordered_map won't
create a node if no insert is required.
2017-05-01 21:03:11 +01:00
Daniel James
2e14c340a8
Reformat
2017-05-01 21:03:11 +01:00
Daniel James
35522d3ee0
Fix merging between containers with different hash/equality
...
This reverts commit 20b0c0a6d8
.
2017-04-30 14:29:05 +01:00