mirror of
https://github.com/boostorg/range.git
synced 2026-03-06 22:04:02 +01:00
[boost][range] - Ticket 5236 - Strided reversing past begin issue resolved.
[SVN r72107]
This commit is contained in:
@@ -250,6 +250,25 @@ namespace boost
|
||||
BOOST_CHECK_EQUAL_COLLECTIONS( reference.begin(), reference.end(),
|
||||
output.begin(), output.end() );
|
||||
}
|
||||
|
||||
template<typename Range>
|
||||
void strided_test_ticket_5236_check(const Range& rng)
|
||||
{
|
||||
BOOST_CHECK_EQUAL( boost::distance(rng), 1 );
|
||||
BOOST_CHECK_EQUAL( std::distance(boost::begin(rng), boost::prior(boost::end(rng))), 0 );
|
||||
|
||||
typename boost::range_iterator<const Range>::type it = boost::end(rng);
|
||||
it = it - 1;
|
||||
|
||||
BOOST_CHECK_EQUAL( std::distance(boost::begin(rng), it), 0 );
|
||||
}
|
||||
|
||||
void strided_test_ticket_5236()
|
||||
{
|
||||
std::vector<int> v;
|
||||
v.push_back(1);
|
||||
strided_test_ticket_5236_check( v | boost::adaptors::strided(2) );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -262,6 +281,7 @@ init_unit_test_suite(int argc, char* argv[])
|
||||
test->add( BOOST_TEST_CASE( &boost::strided_test ) );
|
||||
test->add( BOOST_TEST_CASE( &boost::strided_defect_Trac5014 ) );
|
||||
test->add( BOOST_TEST_CASE( &boost::strided_test_traversal ) );
|
||||
test->add( BOOST_TEST_CASE( &boost::strided_test_ticket_5236 ) );
|
||||
|
||||
return test;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user