STLPort is allergic to std::system, so don't use runtime platform test

[SVN r29672]
This commit is contained in:
Beman Dawes 2005-06-18 12:20:13 +00:00
parent 9ff5970b2c
commit 05df06a5c9

View File

@ -449,38 +449,39 @@ int test_main( int argc, char * argv[] )
BOOST_CHECK( fs::remove( d1 ) );
BOOST_CHECK( !fs::exists( d1 ) );
if ( platform == "POSIX" )
{
// remove() test on dangling symbolic link
fs::path link( "dangling_link" );
fs::remove( link );
BOOST_CHECK( !fs::symbolic_link_exists( link ) );
BOOST_CHECK( !fs::exists( link ) );
std::system("ln -s nowhere dangling_link");
BOOST_CHECK( !fs::exists( link ) );
BOOST_CHECK( fs::symbolic_link_exists( link ) );
BOOST_CHECK( fs::remove( link ) );
BOOST_CHECK( !fs::symbolic_link_exists( link ) );
// STLPort is allergic to std::system, so don't use runtime platform test
# ifdef BOOST_POSIX
// remove() test on dangling symbolic link
fs::path link( "dangling_link" );
fs::remove( link );
BOOST_CHECK( !fs::symbolic_link_exists( link ) );
BOOST_CHECK( !fs::exists( link ) );
std::system("ln -s nowhere dangling_link");
BOOST_CHECK( !fs::exists( link ) );
BOOST_CHECK( fs::symbolic_link_exists( link ) );
BOOST_CHECK( fs::remove( link ) );
BOOST_CHECK( !fs::symbolic_link_exists( link ) );
// remove() test on symbolic link to a file
file_ph = "link_target";
fs::remove( file_ph );
BOOST_CHECK( !fs::exists( file_ph ) );
create_file( file_ph, "" );
BOOST_CHECK( fs::exists( file_ph ) );
BOOST_CHECK( !fs::is_directory( file_ph ) );
std::system("ln -s link_target non_dangling_link");
link = "non_dangling_link";
BOOST_CHECK( fs::exists( link ) );
BOOST_CHECK( !fs::is_directory( link ) );
BOOST_CHECK( fs::symbolic_link_exists( link ) );
BOOST_CHECK( fs::remove( link ) );
BOOST_CHECK( fs::exists( file_ph ) );
BOOST_CHECK( !fs::exists( link ) );
BOOST_CHECK( !fs::symbolic_link_exists( link ) );
BOOST_CHECK( fs::remove( file_ph ) );
BOOST_CHECK( !fs::exists( file_ph ) );
// remove() test on symbolic link to a file
file_ph = "link_target";
fs::remove( file_ph );
BOOST_CHECK( !fs::exists( file_ph ) );
create_file( file_ph, "" );
BOOST_CHECK( fs::exists( file_ph ) );
BOOST_CHECK( !fs::is_directory( file_ph ) );
std::system("ln -s link_target non_dangling_link");
link = "non_dangling_link";
BOOST_CHECK( fs::exists( link ) );
BOOST_CHECK( !fs::is_directory( link ) );
BOOST_CHECK( fs::symbolic_link_exists( link ) );
BOOST_CHECK( fs::remove( link ) );
BOOST_CHECK( fs::exists( file_ph ) );
BOOST_CHECK( !fs::exists( link ) );
BOOST_CHECK( !fs::symbolic_link_exists( link ) );
BOOST_CHECK( fs::remove( file_ph ) );
BOOST_CHECK( !fs::exists( file_ph ) );
}
# endif
// post-test cleanup
BOOST_CHECK( fs::remove_all( dir ) != 0 );