Update test/result_copy_construct

This commit is contained in:
Peter Dimov
2021-09-17 19:25:20 +03:00
parent 50f84f16dc
commit 2b6a708070
2 changed files with 46 additions and 0 deletions

View File

@@ -487,6 +487,20 @@ public:
}
};
template<class Ch, class Tr, class E> std::basic_ostream<Ch, Tr>& operator<<( std::basic_ostream<Ch, Tr>& os, result<void, E> const & r )
{
if( r.has_value() )
{
os << "value:void";
}
else
{
os << "error:" << r.error();
}
return os;
}
} // namespace system
} // namespace boost

View File

@@ -145,5 +145,37 @@ int main()
BOOST_TEST_EQ( X::instances, 0 );
{
result<void> r;
result<void> r2( r );
BOOST_TEST_EQ( r, r2 );
}
{
result<void> const r;
result<void> r2( r );
BOOST_TEST_EQ( r, r2 );
}
{
auto ec = make_error_code( errc::invalid_argument );
result<void> r( ec );
result<void> r2( r );
BOOST_TEST_EQ( r, r2 );
}
{
auto ec = make_error_code( errc::invalid_argument );
result<void> const r( ec );
result<void> r2( r );
BOOST_TEST_EQ( r, r2 );
}
return boost::report_errors();
}