45 lines
1.1 KiB
C++
45 lines
1.1 KiB
C++
/*
|
|
* TestEventHandler.cpp
|
|
*
|
|
* Created on: Jun 28, 2018
|
|
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
|
|
*/
|
|
|
|
#include "catch.hpp"
|
|
#include "fakeit.hpp"
|
|
|
|
// testing purposes
|
|
#define private public
|
|
|
|
#include "utility/LoggerFactory.h"
|
|
#include "input/detail/EventHandler.h"
|
|
#include "input/InputDriver.h"
|
|
|
|
|
|
using namespace fakeit;
|
|
using namespace flippR_driver::utility;
|
|
|
|
SCENARIO("An EventHandler gets created", "[construction}")
|
|
{
|
|
GIVEN("An IInputDriver")
|
|
{
|
|
LoggerFactory::CreateInputTestLogger();
|
|
|
|
Mock<flippR_driver::input::InputDriver> input_driver_mock;
|
|
Fake(Dtor(input_driver_mock));
|
|
When(Method(input_driver_mock, register_event_handler)).AlwaysReturn();
|
|
When(Method(input_driver_mock, unregister_event_handler)).AlwaysReturn();
|
|
|
|
WHEN("the event handler gets created")
|
|
{
|
|
std::shared_ptr<flippR_driver::input::InputDriver> driver_ptr(&input_driver_mock.get());
|
|
flippR_driver::input::detail::EventHandler handler(driver_ptr);
|
|
|
|
THEN("It should register itself at the input_driver")
|
|
{
|
|
REQUIRE((bool)Verify(Method(input_driver_mock, register_event_handler).Using(&handler)));
|
|
}
|
|
}
|
|
}
|
|
}
|