Branch data Line data Source code
# 1 : : // Copyright (c) 2019 The Bitcoin Core developers # 2 : : // Distributed under the MIT software license, see the accompanying # 3 : : // file COPYING or http://www.opensource.org/licenses/mit-license.php. # 4 : : # 5 : : #include <logging.h> # 6 : : #include <logging/timer.h> # 7 : : #include <test/util/setup_common.h> # 8 : : # 9 : : #include <chrono> # 10 : : # 11 : : #include <boost/test/unit_test.hpp> # 12 : : # 13 : : BOOST_FIXTURE_TEST_SUITE(logging_tests, BasicTestingSetup) # 14 : : # 15 : : BOOST_AUTO_TEST_CASE(logging_timer) # 16 : 2 : { # 17 : 2 : SetMockTime(1); # 18 : 2 : auto sec_timer = BCLog::Timer<std::chrono::seconds>("tests", "end_msg"); # 19 : 2 : SetMockTime(2); # 20 : 2 : BOOST_CHECK_EQUAL(sec_timer.LogMsg("test secs"), "tests: test secs (1.00s)"); # 21 : : # 22 : 2 : SetMockTime(1); # 23 : 2 : auto ms_timer = BCLog::Timer<std::chrono::milliseconds>("tests", "end_msg"); # 24 : 2 : SetMockTime(2); # 25 : 2 : BOOST_CHECK_EQUAL(ms_timer.LogMsg("test ms"), "tests: test ms (1000.00ms)"); # 26 : : # 27 : 2 : SetMockTime(1); # 28 : 2 : auto micro_timer = BCLog::Timer<std::chrono::microseconds>("tests", "end_msg"); # 29 : 2 : SetMockTime(2); # 30 : 2 : BOOST_CHECK_EQUAL(micro_timer.LogMsg("test micros"), "tests: test micros (1000000.00μs)"); # 31 : 2 : } # 32 : : # 33 : : BOOST_AUTO_TEST_SUITE_END()