MCPcopy Create free account
hub / github.com/boostorg/filesystem / status_error_reporting_tests

Function status_error_reporting_tests

test/operations_test.cpp:1355–1413  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1353// status_error_reporting_tests ----------------------------------------------------//
1354
1355void status_error_reporting_tests()
1356{
1357 cout << "status_error_reporting_tests..." << endl;
1358
1359 error_code ec;
1360
1361 // test status, ec, for existing file
1362 ec.assign(-1, poison_category());
1363 BOOST_TEST(ec.value() == -1);
1364 BOOST_TEST(&ec.category() == &poison_category());
1365 fs::file_status s = fs::status(".", ec);
1366 BOOST_TEST(ec.value() == 0);
1367 BOOST_TEST(ec.category() == system_category());
1368 BOOST_TEST(fs::exists(s));
1369 BOOST_TEST(fs::is_directory(s));
1370
1371 // test status, ec, for non-existing file
1372 fs::path p("nosuch");
1373 ec.assign(-1, poison_category());
1374 s = fs::status(p, ec);
1375 BOOST_TEST(ec.value() != 0);
1376 BOOST_TEST(ec.category() == system_category());
1377
1378 BOOST_TEST(!fs::exists(s));
1379 BOOST_TEST_EQ(s.type(), fs::file_not_found);
1380 BOOST_TEST(fs::type_present(s));
1381 BOOST_TEST(!fs::is_regular_file(s));
1382 BOOST_TEST(!fs::is_directory(s));
1383 BOOST_TEST(!fs::is_symlink(s));
1384 BOOST_TEST(!fs::is_other(s));
1385
1386 // test queries, ec, for existing file
1387 ec.assign(-1, poison_category());
1388 BOOST_TEST(fs::exists(".", ec));
1389 BOOST_TEST(ec.value() == 0);
1390 BOOST_TEST(ec.category() == system_category());
1391 ec.assign(-1, poison_category());
1392 BOOST_TEST(!fs::is_regular_file(".", ec));
1393 BOOST_TEST(ec.value() == 0);
1394 BOOST_TEST(ec.category() == system_category());
1395 ec.assign(-1, poison_category());
1396 BOOST_TEST(fs::is_directory(".", ec));
1397 BOOST_TEST(ec.value() == 0);
1398 BOOST_TEST(ec.category() == system_category());
1399
1400 // test queries, ec, for non-existing file
1401 ec.assign(-1, poison_category());
1402 BOOST_TEST(!fs::exists(p, ec));
1403 BOOST_TEST(ec.value() != 0);
1404 BOOST_TEST(ec.category() == system_category());
1405 ec.assign(-1, poison_category());
1406 BOOST_TEST(!fs::is_regular_file(p, ec));
1407 BOOST_TEST(ec.value() != 0);
1408 BOOST_TEST(ec.category() == system_category());
1409 ec.assign(-1, poison_category());
1410 BOOST_TEST(!fs::is_directory(p, ec));
1411 BOOST_TEST(ec.value() != 0);
1412 BOOST_TEST(ec.category() == system_category());

Callers 1

cpp_mainFunction · 0.85

Calls 9

typeMethod · 0.80
statusFunction · 0.50
existsFunction · 0.50
is_directoryFunction · 0.50
type_presentFunction · 0.50
is_regular_fileFunction · 0.50
is_symlinkFunction · 0.50
is_otherFunction · 0.50
assignMethod · 0.45

Tested by

no test coverage detected