summaryrefslogtreecommitdiff
path: root/libs/container/test/list_test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libs/container/test/list_test.cpp')
-rw-r--r--libs/container/test/list_test.cpp40
1 files changed, 35 insertions, 5 deletions
diff --git a/libs/container/test/list_test.cpp b/libs/container/test/list_test.cpp
index 1c035a74f..84588b798 100644
--- a/libs/container/test/list_test.cpp
+++ b/libs/container/test/list_test.cpp
@@ -53,9 +53,9 @@ template class boost::container::list
namespace container_detail {
-template class iterator
+template class iterator_from_iiterator
<intrusive_list_type< std::allocator<int> >::container_type::iterator, true >;
-template class iterator
+template class iterator_from_iiterator
<intrusive_list_type< std::allocator<int> >::container_type::iterator, false>;
}
@@ -71,7 +71,7 @@ public:
list<recursive_list>::const_iterator cit_;
list<recursive_list>::reverse_iterator rit_;
list<recursive_list>::const_reverse_iterator crit_;
-
+
recursive_list &operator=(const recursive_list &o)
{ list_ = o.list_; return *this; }
};
@@ -126,10 +126,14 @@ bool test_support_for_initializer_list()
const std::initializer_list<int> il = {1, 10};
const list<int> expectedList(il.begin(), il.end());
- const list<int> testConstructor = il;
+ const list<int> testConstructor((il));
if(testConstructor != expectedList)
return false;
+ const list<int> testConstructorAllocator(il, list<int>::allocator_type());
+ if (testConstructorAllocator != expectedList)
+ return false;
+
list<int> testAssignOperator = {10, 11};
testAssignOperator = il;
if(testAssignOperator != expectedList)
@@ -150,6 +154,22 @@ bool test_support_for_initializer_list()
return true;
}
+struct boost_container_list;
+
+namespace boost { namespace container { namespace test {
+
+template<>
+struct alloc_propagate_base<boost_container_list>
+{
+ template <class T, class Allocator>
+ struct apply
+ {
+ typedef boost::container::list<T, Allocator> type;
+ };
+};
+
+}}} //namespace boost::container::test
+
int main ()
{
recursive_list_test();
@@ -197,7 +217,7 @@ int main ()
////////////////////////////////////
// Allocator propagation testing
////////////////////////////////////
- if(!boost::container::test::test_propagate_allocator<list>())
+ if(!boost::container::test::test_propagate_allocator<boost_container_list>())
return 1;
if(!test_support_for_initializer_list())
@@ -207,3 +227,13 @@ int main ()
}
#include <boost/container/detail/config_end.hpp>
+
+/*
+#include <boost/container/list.hpp>
+//#include <list>
+
+int main()
+{
+ return 0;
+}
+*/