59 lines
1.5 KiB
C++
59 lines
1.5 KiB
C++
/*
|
|
* TestOutputDriver.cpp
|
|
*
|
|
* Created on: Aug 7, 2018
|
|
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
|
|
*/
|
|
|
|
#include <output/DisplayController.h>
|
|
#include "catch.hpp"
|
|
#include "fakeit.hpp"
|
|
|
|
#include "utility/LoggerFactory.h"
|
|
|
|
|
|
// testing purposes
|
|
#define private public
|
|
|
|
#include "output/detail/OutputDriver.h"
|
|
|
|
using namespace flippR_driver;
|
|
using namespace fakeit;
|
|
|
|
SCENARIO("The OutputDriver should activate the displays")
|
|
{
|
|
GIVEN("An OutputDriver")
|
|
{
|
|
Mock<output::DisplayController> display_controller;
|
|
When(Method(display_controller, activate_displays)).AlwaysReturn();
|
|
output::detail::OutputDriver output_driver(std::make_unique<output::DisplayController>(display_controller), {}, {}, {}, {});
|
|
WHEN("The displays get activated")
|
|
{
|
|
output_driver.activate_displays();
|
|
THEN("The display controller should be called")
|
|
{
|
|
REQUIRE((bool)Verify(Method(display_controller, activate_displays)));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
SCENARIO("The OutputDriver should deactivate the displays")
|
|
{
|
|
GIVEN("An OutputDriver")
|
|
{
|
|
Mock<output::DisplayController> display_controller;
|
|
When(Method(display_controller, deactivate_displays)).AlwaysReturn();
|
|
output::detail::OutputDriver output_driver(std::make_unique<output::DisplayController>(display_controller), {}, {}, {}, {});
|
|
WHEN("The displays get deactivated")
|
|
{
|
|
output_driver.activate_displays();
|
|
THEN("The display controller should be called")
|
|
{
|
|
REQUIRE((bool)Verify(Method(display_controller, deactivate_displays)));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|