aboutsummaryrefslogtreecommitdiffstats
path: root/host/tests
diff options
context:
space:
mode:
authorMartin Braun <martin.braun@ettus.com>2014-08-19 16:40:09 +0200
committerMartin Braun <martin.braun@ettus.com>2014-09-23 16:02:14 -0700
commitc431a66df3df4cff82bfa2d2b2c7b16895a7efd6 (patch)
treede7fc65147c688b3b4b18de4f787e3dca897b2ce /host/tests
parent4547d1c74a6c875057f23f8ea77033b9cd191539 (diff)
downloaduhd-c431a66df3df4cff82bfa2d2b2c7b16895a7efd6.tar.gz
uhd-c431a66df3df4cff82bfa2d2b2c7b16895a7efd6.tar.bz2
uhd-c431a66df3df4cff82bfa2d2b2c7b16895a7efd6.zip
uhd: Added an operator/ for (fs_path, size_t)
This is useful when constructing property tree paths. With this path, the following code would be valid: size_t mb_index = 0; fs_path mb_root = "/mboards"; mb_root = mb_root / mb_index; This is a shortcut for the (in UHD very common) mb_root = mb_root / boost::lexical_cast<std::string(mb_index);
Diffstat (limited to 'host/tests')
-rw-r--r--host/tests/property_test.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/host/tests/property_test.cpp b/host/tests/property_test.cpp
index 04d3a831c..00bb3c022 100644
--- a/host/tests/property_test.cpp
+++ b/host/tests/property_test.cpp
@@ -173,3 +173,24 @@ BOOST_AUTO_TEST_CASE(test_prop_subtree){
BOOST_CHECK_EQUAL_COLLECTIONS(tree_dirs2.begin(), tree_dirs2.end(), subtree2_dirs.begin(), subtree2_dirs.end());
}
+
+
+BOOST_AUTO_TEST_CASE(test_prop_operators)
+{
+ uhd::fs_path path1 = "/root/";
+ path1 = path1 / "leaf";
+ BOOST_CHECK_EQUAL(path1, "/root/leaf");
+
+ uhd::fs_path path2 = "/root";
+ path2 = path2 / "leaf";
+ BOOST_CHECK_EQUAL(path2, "/root/leaf");
+
+ uhd::fs_path path3 = "/root/";
+ path3 = path3 / "/leaf/";
+ BOOST_CHECK_EQUAL(path3, "/root/leaf/");
+
+ uhd::fs_path path4 = "/root/";
+ size_t x = 2;
+ path4 = path4 / x;
+ BOOST_CHECK_EQUAL(path4, "/root/2");
+}