Scheduler
rlDisciplineBuilderHelperTest.cpp
Go to the documentation of this file.
1 
10 #include <gtest/gtest.h>
12 #include <mdp/builder.h>
16 
17 #include <utils/randomGenerator.h>
18 #include <scheduler/process.h>
19 #include <scheduler/system.h>
20 
21 
22 TEST(HelperTest, testLcm)
23 {
24  std::vector<std::shared_ptr<Scheduler::Process>> vect(3);
25  vect[0] = Scheduler::Process::createRealTimeTask(0.0, 3.0, 0.0, 0);
26  vect[1] = Scheduler::Process::createRealTimeTask(0.0, 4.0, 0.0, 0);
27  vect[2] = Scheduler::Process::createRealTimeTask(0.0, 5.0, 0.0, 0);
28  double result = RlScheduler::RlDisciplineBuilderHelper::lcm(vect);
29  EXPECT_DOUBLE_EQ(3.0*4.0*5.0, result);
30 
31 }
32 
33 /*
34 class TestConfiguration : public RlScheduler::Configuration
35 {
36 public:
37  TestConfiguration(std::string str) : RlScheduler::Configuration(str){};
38  bool getBoolValue(std::string section, std::string key, bool def)
39  {
40  if (!section.compare("timeState"))
41  return true;
42  return Configuration::getBoolValue(section, key, def);
43  };
44 };
45 
46 TEST(HelperTest, testAddTimeStates)
47 {
48  std::string name = "configuration.conf";
49  Scheduler::SchedulerConfiguration schedConfig(name);
50  Scheduler::System::buildSystem(&schedConfig);
51  TestConfiguration config(name);
52  Mdp::Builder builder(std::make_shared<RlScheduler::DomainModel>(&config));
53  RlScheduler::RlDisciplineBuilderHelper::addTimeStates(&builder, &config);
54 }
55 */
56 
57 
58 
TEST(HelperTest, testLcm)
static std::shared_ptr< Process > createRealTimeTask(double wcet, double T, double dl, int pid, int priority=0, double bcet=0.0)
creates a real time task
Definition: process.cpp:67
static double lcm(std::vector< std::shared_ptr< Scheduler::Process >>)