diff options
author | Josh Blum <josh@joshknows.com> | 2010-08-05 11:50:30 -0700 |
---|---|---|
committer | Josh Blum <josh@joshknows.com> | 2010-08-06 12:15:05 -0700 |
commit | 53341c286eb71ead76ff11796ab67bd98f73c3ab (patch) | |
tree | 9a60145a06d3614dd99670093b2fc337879e6a98 /host/test/subdev_spec_test.cpp | |
parent | 7e8a1f296f934a5546cdad575bcbe030a78b8bb1 (diff) | |
download | uhd-53341c286eb71ead76ff11796ab67bd98f73c3ab.tar.gz uhd-53341c286eb71ead76ff11796ab67bd98f73c3ab.tar.bz2 uhd-53341c286eb71ead76ff11796ab67bd98f73c3ab.zip |
usrp: added subdev spec class with parser to specify subdevice specifications for channel config
Diffstat (limited to 'host/test/subdev_spec_test.cpp')
-rw-r--r-- | host/test/subdev_spec_test.cpp | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/host/test/subdev_spec_test.cpp b/host/test/subdev_spec_test.cpp new file mode 100644 index 000000000..ca4b4771b --- /dev/null +++ b/host/test/subdev_spec_test.cpp @@ -0,0 +1,45 @@ +// +// Copyright 2010 Ettus Research LLC +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see <http://www.gnu.org/licenses/>. +// + +#include <boost/test/unit_test.hpp> +#include <uhd/usrp/subdev_spec.hpp> +#include <boost/foreach.hpp> +#include <iostream> + +BOOST_AUTO_TEST_CASE(test_subdevice_spec){ + std::cout << "Testing subdevice specification..." << std::endl; + + //load the subdev spec with something + uhd::usrp::subdev_spec_t sd_spec; + sd_spec.push_back(uhd::usrp::subdev_spec_t::pair_t("A", "AB")); + sd_spec.push_back(uhd::usrp::subdev_spec_t::pair_t("B", "AB")); + + //convert to and from args string + std::cout << "Pretty Print: " << std::endl << sd_spec.to_pp_string(); + std::string markup_str = sd_spec.to_string(); + std::cout << "Markup String: " << markup_str << std::endl; + uhd::usrp::subdev_spec_t new_sd_spec(markup_str); + + //they should be the same size + BOOST_REQUIRE_EQUAL(sd_spec.size(), new_sd_spec.size()); + + //the contents should match + for (size_t i = 0; i < sd_spec.size(); i++){ + BOOST_CHECK_EQUAL(sd_spec.at(i).first, new_sd_spec.at(i).first); + BOOST_CHECK_EQUAL(sd_spec.at(i).second, new_sd_spec.at(i).second); + } +} |