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

Function test_relationals

test/path_unit_test.cpp:510–567  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

508// test_relationals ----------------------------------------------------------------//
509
510void test_relationals()
511{
512 std::cout << "testing relationals..." << std::endl;
513
514 boost::hash< path > hash;
515
516#ifdef BOOST_FILESYSTEM_WINDOWS_API
517 // this is a critical use case to meet user expectations
518 CHECK(path("c:\\abc") == path("c:/abc"));
519 CHECK(hash(path("c:\\abc")) == hash(path("c:/abc")));
520#endif
521
522 const path p("bar");
523 const path p2("baz");
524
525 CHECK(!(p < p));
526 CHECK(p < p2);
527 CHECK(!(p2 < p));
528 CHECK(p < "baz");
529 CHECK(p < string("baz"));
530 CHECK(p < L"baz");
531 CHECK(p < wstring(L"baz"));
532 CHECK(!("baz" < p));
533 CHECK(!(string("baz") < p));
534 CHECK(!(L"baz" < p));
535 CHECK(!(wstring(L"baz") < p));
536
537 CHECK(p == p);
538 CHECK(!(p == p2));
539 CHECK(!(p2 == p));
540 CHECK(p2 == "baz");
541 CHECK(p2 == string("baz"));
542 CHECK(p2 == L"baz");
543 CHECK(p2 == wstring(L"baz"));
544 CHECK("baz" == p2);
545 CHECK(string("baz") == p2);
546 CHECK(L"baz" == p2);
547 CHECK(wstring(L"baz") == p2);
548
549 CHECK(hash(p) == hash(p));
550 CHECK(hash(p) != hash(p2)); // Not strictly required, but desirable
551
552 CHECK(!(p != p));
553 CHECK(p != p2);
554 CHECK(p2 != p);
555
556 CHECK(p <= p);
557 CHECK(p <= p2);
558 CHECK(!(p2 <= p));
559
560 CHECK(!(p > p));
561 CHECK(!(p > p2));
562 CHECK(p2 > p);
563
564 CHECK(p >= p);
565 CHECK(!(p >= p2));
566 CHECK(p2 >= p);
567}

Callers 1

test_mainFunction · 0.85

Calls 2

stringFunction · 0.85
pathFunction · 0.70

Tested by

no test coverage detected