32 lines
1.3 KiB
C++
32 lines
1.3 KiB
C++
// Copyright (2019-2023) Paul Scherrer Institute
|
|
|
|
#include <thread>
|
|
#include <catch2/catch_all.hpp>
|
|
#include "../preview/PreviewCounter.h"
|
|
|
|
TEST_CASE("PreviewCount", "") {
|
|
PreviewCounter counter(std::chrono::seconds(1));
|
|
|
|
REQUIRE(counter.GeneratePreview()); // at first run it should generate preview
|
|
REQUIRE(!counter.GeneratePreview()); // immediately after not
|
|
std::this_thread::sleep_for(std::chrono::seconds(1));
|
|
REQUIRE(counter.GeneratePreview());
|
|
REQUIRE(!counter.GeneratePreview()); // immediately after not
|
|
REQUIRE(!counter.GeneratePreview()); // immediately after not
|
|
REQUIRE(!counter.GeneratePreview()); // immediately after not
|
|
std::this_thread::sleep_for(std::chrono::seconds(1));
|
|
REQUIRE(counter.GeneratePreview());
|
|
REQUIRE(!counter.GeneratePreview()); // immediately after not
|
|
}
|
|
|
|
TEST_CASE("PreviewCount_Off", "") {
|
|
PreviewCounter counter(std::chrono::seconds(0));
|
|
|
|
REQUIRE(!counter.GeneratePreview()); // at first run it should generate preview
|
|
std::this_thread::sleep_for(std::chrono::seconds(1));
|
|
REQUIRE(!counter.GeneratePreview());
|
|
REQUIRE(!counter.GeneratePreview()); // immediately after not
|
|
REQUIRE(!counter.GeneratePreview()); // immediately after not
|
|
REQUIRE(!counter.GeneratePreview()); // immediately after not
|
|
}
|