2017-08-24 22:48:42 +00:00
|
|
|
//
|
|
|
|
|
// Copyright 2017 Ettus Research (National Instruments Corp.)
|
|
|
|
|
//
|
|
|
|
|
// SPDX-License-Identifier: GPL-3.0+
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
#include "system_time.hpp"
|
2019-01-14 18:35:25 +00:00
|
|
|
#include <uhd/types/time_spec.hpp>
|
|
|
|
|
#include <boost/test/unit_test.hpp>
|
2017-08-24 22:48:42 +00:00
|
|
|
#include <chrono>
|
2019-01-14 18:35:25 +00:00
|
|
|
#include <cstdint>
|
|
|
|
|
#include <iomanip>
|
|
|
|
|
#include <iostream>
|
2019-01-08 15:32:10 +00:00
|
|
|
#include <thread>
|
2017-08-24 22:48:42 +00:00
|
|
|
|
2019-01-14 18:35:25 +00:00
|
|
|
BOOST_AUTO_TEST_CASE(test_time_spec_get_system_time)
|
|
|
|
|
{
|
2017-08-24 22:48:42 +00:00
|
|
|
std::cout << "Testing time specification get system time..." << std::endl;
|
|
|
|
|
|
2019-01-14 18:35:25 +00:00
|
|
|
// Not really checking for high resolution timing here,
|
|
|
|
|
// just need to check that system time is minimally working.
|
2017-08-24 22:48:42 +00:00
|
|
|
|
|
|
|
|
auto start = uhd::get_system_time();
|
|
|
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(500));
|
|
|
|
|
auto stop = uhd::get_system_time();
|
|
|
|
|
|
|
|
|
|
auto diff = stop - start;
|
|
|
|
|
std::cout << "start: " << start.get_real_secs() << std::endl;
|
|
|
|
|
std::cout << "stop: " << stop.get_real_secs() << std::endl;
|
|
|
|
|
std::cout << "diff: " << diff.get_real_secs() << std::endl;
|
2019-01-14 18:35:25 +00:00
|
|
|
BOOST_CHECK(diff.get_real_secs() > 0); // assert positive
|
|
|
|
|
BOOST_CHECK(diff.get_real_secs() < 1.0); // assert under 1s
|
2017-08-24 22:48:42 +00:00
|
|
|
}
|