From 483eb2f56657e8e7f419ab1a4fab8dce9ade8609 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 27 Apr 2024 20:24:20 +0200 Subject: Adding upstream version 14.2.21. Signed-off-by: Daniel Baumann --- .../libs/iostreams/test/write_seekable_test.hpp | 77 ++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 src/boost/libs/iostreams/test/write_seekable_test.hpp (limited to 'src/boost/libs/iostreams/test/write_seekable_test.hpp') diff --git a/src/boost/libs/iostreams/test/write_seekable_test.hpp b/src/boost/libs/iostreams/test/write_seekable_test.hpp new file mode 100644 index 00000000..cf83d0e8 --- /dev/null +++ b/src/boost/libs/iostreams/test/write_seekable_test.hpp @@ -0,0 +1,77 @@ +// (C) Copyright 2008 CodeRage, LLC (turkanis at coderage dot com) +// (C) Copyright 2004-2007 Jonathan Turkanis +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt.) + +// See http://www.boost.org/libs/iostreams for documentation. + +#ifndef BOOST_IOSTREAMS_TEST_WRITE_SEEKABLE_HPP_INCLUDED +#define BOOST_IOSTREAMS_TEST_WRITE_SEEKABLE_HPP_INCLUDED + +#include +#include +#include +#include +#include "detail/temp_file.hpp" +#include "detail/verification.hpp" + +void write_seekable_test() +{ + using namespace std; + using namespace boost; + using namespace boost::iostreams; + using namespace boost::iostreams::test; + + test_file test; + BOOST_IOS::openmode mode = out_mode | BOOST_IOS::trunc; + + { + temp_file test2; + filtering_stream out(file(test2.name(), mode), 0); + write_data_in_chars(out); + out.reset(); + BOOST_CHECK_MESSAGE( + compare_files(test2.name(), test.name()), + "failed writing to filtering_stream in chars with" + "no buffer" + ); + } + + { + temp_file test2; + filtering_stream out(file(test2.name(), mode), 0); + write_data_in_chunks(out); + out.reset(); + BOOST_CHECK_MESSAGE( + compare_files(test2.name(), test.name()), + "failed writing to filtering_stream in chunks with" + "no buffer" + ); + } + + { + temp_file test2; + filtering_stream out(file(test2.name(), mode)); + write_data_in_chars(out); + out.reset(); + BOOST_CHECK_MESSAGE( + compare_files(test2.name(), test.name()), + "failed writing to filtering_stream in chars with" + "large buffer" + ); + } + + { + temp_file test2; + filtering_stream out(file(test2.name(), mode)); + write_data_in_chunks(out); + out.reset(); + BOOST_CHECK_MESSAGE( + compare_files(test2.name(), test.name()), + "failed writing to filtering_stream in chunks with" + "large buffer" + ); + } +} + +#endif // #ifndef BOOST_IOSTREAMS_TEST_WRITE_SEEKABLE_HPP_INCLUDED -- cgit v1.2.3