summaryrefslogtreecommitdiff
path: root/Testing/include/modeling/DatacenterTest.h
blob: 0b64c88a7944ef7a82f490e99ceeff05f07b8fe4 (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
35
#pragma once
#include "modeling\Datacenter.h"
#include "simulation\workloads\SimpleScheduler.h"

#include <gtest\gtest.h>

TEST(DatacenterTest, GetAddRoomOfType)
{
	Simulation::Scheduler* scheduler = new Simulation::SimpleScheduler();
	Modeling::Datacenter<int, float, double> datacenter(scheduler);

	int first = 4, second = 1;
	datacenter.addRoomOfType<int>(first);
	datacenter.addRoomOfType<int>(second);
	double third = 3.0;
	datacenter.addRoomOfType<double>(third);

	ASSERT_EQ(datacenter.getRoomsOfType<int>().at(0), 4);
	ASSERT_EQ(datacenter.getRoomsOfType<int>().at(1), 1);
	ASSERT_EQ(datacenter.getRoomsOfType<double>().at(0), 3.0);
}

TEST(DatacenterTest, GetSetScheduler)
{
	Simulation::Scheduler* scheduler = new Simulation::SimpleScheduler();
	Simulation::Scheduler* secondScheduler = new Simulation::SimpleScheduler();
	
	Modeling::Datacenter<int, float, double> datacenter(scheduler);

	ASSERT_EQ(datacenter.getScheduler().get(), scheduler);

	datacenter.setScheduler(secondScheduler);

	ASSERT_EQ(datacenter.getScheduler().get(), secondScheduler);
}