1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
#include <SFML/System/Sleep.hpp>
// Other 1st party headers
#include <SFML/System/Time.hpp>
#include <catch2/catch_test_macros.hpp>
#include <chrono>
using namespace std::chrono_literals;
#define CHECK_SLEEP_DURATION(duration) \
do \
{ \
const auto startTime = std::chrono::steady_clock::now(); \
sf::sleep((duration)); \
const auto elapsed = std::chrono::steady_clock::now() - startTime; \
CHECK(elapsed >= (duration)); \
} while (false)
TEST_CASE("[System] sf::sleep")
{
CHECK_SLEEP_DURATION(1ms);
CHECK_SLEEP_DURATION(10ms);
CHECK_SLEEP_DURATION(100ms);
}
|