// (C) Copyright Jonathan Turkanis 2004 // 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. #include #include #include #include #include #include "detail/temp_file.hpp" #include "detail/verification.hpp" using namespace std; using namespace boost; using namespace boost::iostreams; using namespace boost::iostreams::test; using boost::unit_test_framework::test_suite; void seekable_file_test() { { temp_file temp; file f(temp.name(), ios::in | ios::out | ios::trunc | ios::binary); filtering_stream io(f); io.exceptions(ios::failbit | ios::badbit); BOOST_CHECK_MESSAGE( test_seekable_in_chars(io), "failed seeking within a file, in chars" ); } { temp_file temp; file f(temp.name(), ios::in | ios::out | ios::trunc | ios::binary); filtering_stream io(f); io.exceptions(ios::failbit | ios::badbit); BOOST_CHECK_MESSAGE( test_seekable_in_chunks(io), "failed seeking within a file, in chunks" ); } } test_suite* init_unit_test_suite(int, char* []) { test_suite* test = BOOST_TEST_SUITE("seekable file test"); test->add(BOOST_TEST_CASE(&seekable_file_test)); return test; }