started writing tests

This commit is contained in:
Johannes Wendel
2019-03-10 14:26:44 +01:00
parent 865772214b
commit a7304c2d16
4 changed files with 47 additions and 6 deletions

View File

@@ -8,6 +8,8 @@
#ifndef FLIPPR_DRIVER_OUTPUT_ITEMS_DISPLAY_H_
#define FLIPPR_DRIVER_OUTPUT_ITEMS_DISPLAY_H_
#include <iosfwd>
namespace flippR_driver
{
namespace output

View File

@@ -46,14 +46,14 @@ void DisplayController::cycle_displays() const
void DisplayController::activate_displays() const
{
CLOG(INFO, OUTPUT_LOGGER) << "Activated all displays!";
pin_controller->activate_displays();
CLOG(INFO, OUTPUT_LOGGER) << "Activated all displays!";
}
void DisplayController::deactivate_displays() const
{
CLOG(INFO, OUTPUT_LOGGER) << "Deactivated all displays!";
pin_controller->deactivate_displays();
CLOG(INFO, OUTPUT_LOGGER) << "Deactivated all displays!";
}
}

View File

@@ -4,7 +4,9 @@
#include "InputSocketHandler.h"
#include "boost/date_time/posix_time/posix_time.hpp"
#include <boost/date_time/posix_time/posix_time.hpp>
#include "json.hpp"
namespace flippR_driver
{

View File

@@ -5,21 +5,58 @@
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/
#include <vector>
#include <memory>
#include "catch.hpp"
#include "fakeit.hpp"
#include "utility/LoggerFactory.h"
#include "output/DisplayController.h"
#include "output/items/OutputDisplay.h"
#include "output/detail/DisplayBoardPinController.h"
#include "output/detail/DisplayController.h"
// testing purposes
#define private public
#include "output/DisplayController.h"
using namespace flippR_driver::output;
using namespace fakeit;
using namespace flippR_driver::utility;
using namespace fakeit;
SCENARIO("")
SCENARIO("A display controller gets created", "")
{
GIVEN("A set of displays and a pin controller")
{
LoggerFactory::CreateInputTestLogger();
std::vector<std::shared_ptr<items::OutputDisplay>> output_diplays;
for(int i = 0; i < 3; i++)
{
Mock<items::OutputDisplay> display_mock;
Fake(Dtor(display_mock));
output_diplays.push_back(std::make_shared<items::OutputDisplay>(display_mock));
}
Mock<DisplayBoardPinController> display_board_pin_controller_mock;
Fake(Dtor(display_board_pin_controller_mock));
When(Method(display_board_pin_controller_mock, write_display)).AlwaysReturn();
When(Method(display_board_pin_controller_mock, activate_displays)).AlwaysReturn();
When(Method(display_board_pin_controller_mock, deactivate_displays)).AlwaysReturn();
WHEN("The DisplayController is created")
{
detail::DisplayController controller(output_diplays, std::make_unique<DisplayBoardPinController>(display_board_pin_controller_mock));
THEN("All Displays should be activated")
{
// REQUIRE(display_board_pin_controller_mock.)
// ToDo: to be continued!
}
}
}
}