aboutsummaryrefslogtreecommitdiff
path: root/src/test/gameLoopTest.cpp
blob: af80b2779f46f2b383e541bace934830272e5481 (plain)
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
27
28
29
30
31
32
33
34
#define private public
#define protected public
#include "api/LoopManager.h"
#include "api/LoopTimer.h"
#include <gmock/gmock.h>
#include <gtest/gtest.h>

using namespace std;
using namespace std::chrono_literals;
using namespace crepe;

class GameLoopTest : public ::testing::Test {
public:
LoopManager loop_manager;
LoopTimer loop_timer = LoopTimer::get_instance();
protected:
	void SetUp() override {
		loop_timer.start();
		loop_manager.start();
	}

	void TearDown() override {
		
	}
};
TEST_F(GameLoopTest, TestDeltaTime) {
    auto start_time = std::chrono::steady_clock::now();
    
    loop_timer.update();  
    double delta_time = loop_timer.get_delta_time();

    auto elapsed_time = std::chrono::steady_clock::now() - start_time;
    EXPECT_LE(delta_time, std::chrono::duration<double>(elapsed_time).count());  // delta_time should match or be slightly less
}