added 2 output_tests + some add to output_driver

This commit is contained in:
Jonas Zeunert
2019-05-02 10:52:47 +02:00
parent 2ae71c2f53
commit 5e0517cf8a
8 changed files with 317 additions and 190 deletions

371
.idea/workspace.xml generated
View File

@@ -12,8 +12,14 @@
</component> </component>
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="e02dc5d7-dead-448e-976e-72d458e813a0" name="Default Changelist" comment=""> <list default="true" id="e02dc5d7-dead-448e-976e-72d458e813a0" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/FlippR-Driver/include/output/OutputDriver.h" beforeDir="false" afterPath="$PROJECT_DIR$/FlippR-Driver/include/output/OutputDriver.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/FlippR-Driver/src/output/detail/OutputDriver.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/FlippR-Driver/src/output/detail/OutputDriver.cpp" afterDir="false" />
<change beforePath="$PROJECT_DIR$/FlippR-Driver/src/output/detail/OutputDriver.h" beforeDir="false" afterPath="$PROJECT_DIR$/FlippR-Driver/src/output/detail/OutputDriver.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.cpp" afterDir="false" /> <change beforePath="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.cpp" afterDir="false" />
<change beforePath="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.h" beforeDir="false" afterPath="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.h" afterDir="false" /> <change beforePath="$PROJECT_DIR$/FlippR-Driver/tests/input/TestEventHandler.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/FlippR-Driver/tests/input/TestEventHandler.cpp" afterDir="false" />
<change beforePath="$PROJECT_DIR$/FlippR-Driver/tests/output/TestLamp.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/FlippR-Driver/tests/output/TestLamp.cpp" afterDir="false" />
<change beforePath="$PROJECT_DIR$/FlippR-Driver/tests/output/TestOutputDriver.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/FlippR-Driver/tests/output/TestOutputDriver.cpp" afterDir="false" />
</list> </list>
<ignored path="$PROJECT_DIR$/cmake-build-debug/" /> <ignored path="$PROJECT_DIR$/cmake-build-debug/" />
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" /> <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
@@ -22,52 +28,62 @@
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" /> <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" /> <option name="LAST_RESOLUTION" value="IGNORE" />
</component> </component>
<component name="ClangdSettings">
<option name="formatViaClangd" value="false" />
</component>
<component name="ExecutionTargetManager" SELECTED_TARGET="CMakeBuildProfile:Debug" /> <component name="ExecutionTargetManager" SELECTED_TARGET="CMakeBuildProfile:Debug" />
<component name="FileEditorManager"> <component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300"> <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file pinned="false" current-in-tab="false"> <file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/input/SocketHandler.cpp"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/output/TestLamp.cpp">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="742"> <state relative-caret-position="977">
<caret line="55" selection-start-line="55" selection-end-line="55" /> <caret line="58" column="3" lean-forward="true" selection-start-line="58" selection-start-column="3" selection-end-line="58" selection-end-column="3" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputHTTPServer.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="462">
<caret line="21" selection-start-line="21" selection-end-line="21" />
<folding> <folding>
<element signature="e#42#80#0" expanded="true" /> <element signature="e#121#141#0" expanded="true" />
</folding> </folding>
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file pinned="false" current-in-tab="false"> <file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputHTTPServer.h"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/input/TestEventHandler.cpp">
<provider selected="true" editor-type-id="text-editor" /> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="814">
<caret line="39" column="7" selection-start-line="39" selection-start-column="7" selection-end-line="39" selection-end-column="7" />
<folding>
<element signature="e#130#150#0" expanded="true" />
</folding>
</state>
</provider>
</entry> </entry>
</file> </file>
<file pinned="false" current-in-tab="false"> <file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/Event.cpp"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/output/TestOutputDriver.cpp">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="283"> <state relative-caret-position="572">
<caret line="26" column="30" selection-start-line="26" selection-start-column="30" selection-end-line="26" selection-end-column="30" /> <caret line="26" column="55" selection-start-line="26" selection-start-column="55" selection-end-line="26" selection-end-column="55" />
<folding> <folding>
<element signature="e#118#142#0" expanded="true" /> <element signature="e#129#166#0" expanded="true" />
</folding> </folding>
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/output/detail/OutputDriver.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="572">
<caret line="57" column="59" selection-start-line="57" selection-start-column="59" selection-end-line="57" selection-end-column="59" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="true"> <file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.cpp"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.cpp">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="506"> <state relative-caret-position="10">
<caret line="195" column="58" selection-start-line="195" selection-start-column="58" selection-end-line="195" selection-end-column="58" /> <caret line="215" column="34" selection-start-line="215" selection-start-column="34" selection-end-line="215" selection-end-column="34" />
<folding> <folding>
<element signature="e#42#82#0" expanded="true" /> <element signature="e#42#82#0" expanded="true" />
</folding> </folding>
@@ -76,19 +92,19 @@
</entry> </entry>
</file> </file>
<file pinned="false" current-in-tab="false"> <file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandlerFactory.h"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/src/output/detail/OutputDriver.h">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="308"> <state relative-caret-position="493">
<caret line="17" column="35" selection-start-line="17" selection-start-column="35" selection-end-line="17" selection-end-column="35" /> <caret line="38" column="51" selection-start-line="38" selection-start-column="51" selection-end-line="38" selection-end-column="51" />
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file pinned="false" current-in-tab="false"> <file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandlerFactory.cpp"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/include/output/OutputDriver.h">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="110"> <state relative-caret-position="616">
<caret line="5" column="24" selection-start-line="5" selection-start-column="24" selection-end-line="5" selection-end-column="24" /> <caret line="36" column="10" selection-start-line="36" selection-start-column="10" selection-end-line="36" selection-end-column="10" />
</state> </state>
</provider> </provider>
</entry> </entry>
@@ -96,8 +112,8 @@
<file pinned="false" current-in-tab="false"> <file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.h"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.h">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="549"> <state relative-caret-position="425">
<caret line="29" column="36" selection-start-line="29" selection-start-column="2" selection-end-line="29" selection-end-column="37" /> <caret line="20" selection-start-line="20" selection-end-line="20" />
<folding> <folding>
<element signature="e#128#168#0" expanded="true" /> <element signature="e#128#168#0" expanded="true" />
</folding> </folding>
@@ -105,16 +121,6 @@
</provider> </provider>
</entry> </entry>
</file> </file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/EventNotifier.h">
<provider selected="true" editor-type-id="text-editor" />
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/DistributingEvent.h">
<provider selected="true" editor-type-id="text-editor" />
</entry>
</file>
</leaf> </leaf>
</component> </component>
<component name="FindInProjectRecents"> <component name="FindInProjectRecents">
@@ -132,8 +138,6 @@
<component name="IdeDocumentHistory"> <component name="IdeDocumentHistory">
<option name="CHANGED_PATHS"> <option name="CHANGED_PATHS">
<list> <list>
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/SolenoidRequestHandler.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/LampRequestHandler.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/ItemRequestHandler.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/ItemRequestHandler.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/SolenoidRequestHandler.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/SolenoidRequestHandler.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/LampRequestHandler.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/LampRequestHandler.cpp" />
@@ -143,14 +147,11 @@
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/OutputHTTPServer.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/OutputHTTPServer.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/OutputHTTPServer.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/OutputHTTPServer.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/OutputRequestHandler.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/OutputRequestHandler.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/output/detail/OutputDriver.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/include/output/OutputDriver.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/include/output/items/SevenDigitDisplay.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/include/output/items/SevenDigitDisplay.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/include/output/items/EightDigitDisplay.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/include/output/items/EightDigitDisplay.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/output/detail/DisplayBoardPinController.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/output/detail/DisplayBoardPinController.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/output/detail/DisplayBoardPinController.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/output/detail/DisplayBoardPinController.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/output/detail/DriverBoardPinController.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/output/detail/DriverBoardPinController.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/output/detail/OutputDriver.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/PinController.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/PinController.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/SocketHandler.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/SocketHandler.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/SocketHandler.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/SocketHandler.cpp" />
@@ -159,7 +160,6 @@
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputSocketHandler.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputSocketHandler.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/tests/input/TestDetector.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/tests/input/TestDetector.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/input/detail/EventNotifier.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/input/detail/EventNotifier.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/tests/input/TestEventHandler.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/tests/input/TestEventNotifier.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/tests/input/TestEventNotifier.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/tests/input/TestInputDriver.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/tests/input/TestInputDriver.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/input/detail/InputDriver.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/input/detail/InputDriver.cpp" />
@@ -167,7 +167,6 @@
<option value="$PROJECT_DIR$/FlippR-Driver/tests/main.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/tests/main.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/tests/output/TestDisplayController.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/tests/output/TestDisplayController.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/output/detail/DisplayController.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/output/detail/DisplayController.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/tests/output/TestOutputItem.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/input/InputSocketConnection.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/input/InputSocketConnection.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/tests/catch.hpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/tests/catch.hpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/input/TcpServer.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/input/TcpServer.h" />
@@ -182,6 +181,13 @@
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/input/SocketHandler.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/input/SocketHandler.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/output/OutputPinController.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/output/OutputPinController.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.h" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/tests/output/TestOutputItem.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/tests/input/TestEventHandler.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/tests/output/TestLamp.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/tests/output/TestOutputDriver.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/output/detail/OutputDriver.cpp" />
<option value="$PROJECT_DIR$/FlippR-Driver/include/output/OutputDriver.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/output/detail/OutputDriver.h" />
<option value="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.cpp" /> <option value="$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.cpp" />
</list> </list>
</option> </option>
@@ -229,6 +235,13 @@
<item name="include" type="462c0819:PsiDirectoryNode" /> <item name="include" type="462c0819:PsiDirectoryNode" />
<item name="input" type="462c0819:PsiDirectoryNode" /> <item name="input" type="462c0819:PsiDirectoryNode" />
</path> </path>
<path>
<item name="flippr_code" type="b2602c69:ProjectViewProjectNode" />
<item name="flippr-code" type="462c0819:PsiDirectoryNode" />
<item name="FlippR-Driver" type="462c0819:PsiDirectoryNode" />
<item name="include" type="462c0819:PsiDirectoryNode" />
<item name="output" type="462c0819:PsiDirectoryNode" />
</path>
<path> <path>
<item name="flippr_code" type="b2602c69:ProjectViewProjectNode" /> <item name="flippr_code" type="b2602c69:ProjectViewProjectNode" />
<item name="flippr-code" type="462c0819:PsiDirectoryNode" /> <item name="flippr-code" type="462c0819:PsiDirectoryNode" />
@@ -263,6 +276,31 @@
<item name="src" type="462c0819:PsiDirectoryNode" /> <item name="src" type="462c0819:PsiDirectoryNode" />
<item name="output" type="462c0819:PsiDirectoryNode" /> <item name="output" type="462c0819:PsiDirectoryNode" />
</path> </path>
<path>
<item name="flippr_code" type="b2602c69:ProjectViewProjectNode" />
<item name="flippr-code" type="462c0819:PsiDirectoryNode" />
<item name="FlippR-Driver" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="output" type="462c0819:PsiDirectoryNode" />
<item name="detail" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="flippr_code" type="b2602c69:ProjectViewProjectNode" />
<item name="flippr-code" type="462c0819:PsiDirectoryNode" />
<item name="FlippR-Driver" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="output" type="462c0819:PsiDirectoryNode" />
<item name="items" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="flippr_code" type="b2602c69:ProjectViewProjectNode" />
<item name="flippr-code" type="462c0819:PsiDirectoryNode" />
<item name="FlippR-Driver" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="output" type="462c0819:PsiDirectoryNode" />
<item name="items" type="462c0819:PsiDirectoryNode" />
<item name="detail" type="462c0819:PsiDirectoryNode" />
</path>
<path> <path>
<item name="flippr_code" type="b2602c69:ProjectViewProjectNode" /> <item name="flippr_code" type="b2602c69:ProjectViewProjectNode" />
<item name="flippr-code" type="462c0819:PsiDirectoryNode" /> <item name="flippr-code" type="462c0819:PsiDirectoryNode" />
@@ -323,6 +361,7 @@
</panes> </panes>
</component> </component>
<component name="PropertiesComponent"> <component name="PropertiesComponent">
<property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
<property name="WebServerToolWindowFactoryState" value="false" /> <property name="WebServerToolWindowFactoryState" value="false" />
<property name="nodejs_package_manager_path" value="npm" /> <property name="nodejs_package_manager_path" value="npm" />
<property name="settings.editor.selected.configurable" value="preferences.sourceCode.C/C++" /> <property name="settings.editor.selected.configurable" value="preferences.sourceCode.C/C++" />
@@ -394,12 +433,15 @@
<workItem from="1556187501636" duration="4257000" /> <workItem from="1556187501636" duration="4257000" />
<workItem from="1556211614557" duration="1716000" /> <workItem from="1556211614557" duration="1716000" />
<workItem from="1556213821558" duration="6519000" /> <workItem from="1556213821558" duration="6519000" />
<workItem from="1556619506370" duration="3165000" /> <workItem from="1556619506370" duration="3285000" />
<workItem from="1556634285722" duration="44000" />
<workItem from="1556635051518" duration="29000" />
<workItem from="1556736637754" duration="6846000" />
</task> </task>
<servers /> <servers />
</component> </component>
<component name="TimeTrackingManager"> <component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="61945000" /> <option name="totallyTimeSpent" value="68984000" />
</component> </component>
<component name="TodoView"> <component name="TodoView">
<todo-panel id="selected-file"> <todo-panel id="selected-file">
@@ -414,7 +456,7 @@
<frame x="80" y="0" width="2480" height="1440" extended-state="6" /> <frame x="80" y="0" width="2480" height="1440" extended-state="6" />
<editor active="true" /> <editor active="true" />
<layout> <layout>
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.27302906" /> <window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.28423238" />
<window_info id="Structure" order="1" side_tool="true" weight="0.25" /> <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
<window_info id="Favorites" order="2" side_tool="true" /> <window_info id="Favorites" order="2" side_tool="true" />
<window_info anchor="bottom" id="Message" order="0" /> <window_info anchor="bottom" id="Message" order="0" />
@@ -462,88 +504,6 @@
<option name="version" value="1" /> <option name="version" value="1" />
</component> </component>
<component name="editorHistoryManager"> <component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/SocketHandler.h">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="255">
<caret line="17" column="25" selection-start-line="17" selection-start-column="25" selection-end-line="17" selection-end-column="25" />
<folding>
<element signature="e#120#148#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/DriverFactory.cpp">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/InputPinController.h">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="255">
<caret line="17" column="6" selection-start-line="17" selection-start-column="6" selection-end-line="17" selection-end-column="6" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/detail/InputPinController.h">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="285">
<caret line="24" column="52" lean-forward="true" selection-start-line="24" selection-start-column="52" selection-end-line="24" selection-end-column="52" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/detail/Detector.h">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-215" />
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/input/TestEventNotifier.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="135">
<caret line="12" column="22" selection-start-line="12" selection-start-column="22" selection-end-line="12" selection-end-column="22" />
<folding>
<element signature="e#132#152#0" expanded="true" />
<element signature="e#220#254#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/input/TestEventHandler.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="225">
<caret line="15" column="30" selection-start-line="15" selection-start-column="30" selection-end-line="15" selection-end-column="30" />
<folding>
<element signature="e#130#150#0" expanded="true" />
<element signature="e#217#251#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/input/TestDetector.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1920">
<caret line="128" column="14" selection-start-line="128" selection-start-column="14" selection-end-line="128" selection-end-column="14" />
<folding>
<element signature="e#127#147#0" expanded="true" />
<element signature="e#250#282#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file:///usr/include/boost/optional/optional.hpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="300">
<caret line="714" column="2" selection-start-line="714" selection-start-column="2" selection-end-line="714" selection-end-column="2" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/input/TestInputDriver.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="665">
<caret line="143" column="39" selection-start-line="143" selection-start-column="39" selection-end-line="143" selection-end-column="39" />
<folding>
<element signature="e#252#282#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/detail/InputDriver.cpp"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/detail/InputDriver.cpp">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90"> <state relative-caret-position="90">
@@ -575,13 +535,6 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/output/TestOutputItem.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="240">
<caret line="19" column="23" selection-start-line="19" selection-start-column="23" selection-end-line="19" selection-end-column="23" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/catch.hpp"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/catch.hpp">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="537"> <state relative-caret-position="537">
@@ -1158,13 +1111,6 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/output/TestDisplay.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-444">
<caret line="10" column="14" selection-start-line="10" selection-start-column="14" selection-end-line="10" selection-end-column="14" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/output/TestDisplayController.cpp"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/output/TestDisplayController.cpp">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="254"> <state relative-caret-position="254">
@@ -1175,12 +1121,6 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/output/TestLamp.cpp">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/output/TestOutputDriver.cpp">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputSocketHandler.cpp"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputSocketHandler.cpp">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="110"> <state relative-caret-position="110">
@@ -1202,6 +1142,30 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/input/SocketHandler.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1210">
<caret line="55" selection-start-line="55" selection-end-line="55" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/Event.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="572">
<caret line="26" column="30" selection-start-line="26" selection-start-column="30" selection-end-line="26" selection-end-column="30" />
<folding>
<element signature="e#118#142#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandlerFactory.h">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="374">
<caret line="17" column="35" selection-start-line="17" selection-start-column="35" selection-end-line="17" selection-end-column="35" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandlerFactory.cpp"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandlerFactory.cpp">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="110"> <state relative-caret-position="110">
@@ -1209,6 +1173,12 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/EventNotifier.h">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/DistributingEvent.h">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputHTTPServer.cpp"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputHTTPServer.cpp">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="462"> <state relative-caret-position="462">
@@ -1220,52 +1190,113 @@
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputHTTPServer.h"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputHTTPServer.h">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="484">
<caret line="25" selection-start-line="25" selection-end-line="25" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/output/TestDisplay.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-176">
<caret line="10" column="14" selection-start-line="10" selection-start-column="14" selection-end-line="10" selection-end-column="14" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/output/TestOutputItem.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="506">
<caret line="26" selection-start-line="26" selection-end-line="26" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/output/items/detail/Lamp.h">
<provider selected="true" editor-type-id="text-editor" /> <provider selected="true" editor-type-id="text-editor" />
</entry> </entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/EventNotifier.h"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/output/TestLamp.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="977">
<caret line="58" column="3" lean-forward="true" selection-start-line="58" selection-start-column="3" selection-end-line="58" selection-end-column="3" />
<folding>
<element signature="e#121#141#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/include/DriverFactory.h">
<provider selected="true" editor-type-id="text-editor" /> <provider selected="true" editor-type-id="text-editor" />
</entry> </entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/DistributingEvent.h"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/src/output/OutputDriverFactory.cpp">
<provider selected="true" editor-type-id="text-editor" /> <provider selected="true" editor-type-id="text-editor" />
</entry> </entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/output/OutputDriverFactory.h">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="670">
<caret line="36" column="44" selection-start-line="36" selection-start-column="44" selection-end-line="36" selection-end-column="44" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/output/items/detail/Lamp.cpp">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/input/TestEventHandler.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="814">
<caret line="39" column="7" selection-start-line="39" selection-start-column="7" selection-end-line="39" selection-end-column="7" />
<folding>
<element signature="e#130#150#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/output/items/detail/EightDigitDisplay.h">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/tests/output/TestOutputDriver.cpp">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="572">
<caret line="26" column="55" selection-start-line="26" selection-start-column="55" selection-end-line="26" selection-end-column="55" />
<folding>
<element signature="e#129#166#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.h"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.h">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="549"> <state relative-caret-position="425">
<caret line="29" column="36" selection-start-line="29" selection-start-column="2" selection-end-line="29" selection-end-column="37" /> <caret line="20" selection-start-line="20" selection-end-line="20" />
<folding> <folding>
<element signature="e#128#168#0" expanded="true" /> <element signature="e#128#168#0" expanded="true" />
</folding> </folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/input/SocketHandler.cpp"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/src/output/detail/OutputDriver.cpp">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="742"> <state relative-caret-position="572">
<caret line="55" selection-start-line="55" selection-end-line="55" /> <caret line="57" column="59" selection-start-line="57" selection-start-column="59" selection-end-line="57" selection-end-column="59" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/input/Event.cpp"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/include/output/OutputDriver.h">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="283"> <state relative-caret-position="616">
<caret line="26" column="30" selection-start-line="26" selection-start-column="30" selection-end-line="26" selection-end-column="30" /> <caret line="36" column="10" selection-start-line="36" selection-start-column="10" selection-end-line="36" selection-end-column="10" />
<folding>
<element signature="e#118#142#0" expanded="true" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandlerFactory.h"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/src/output/detail/OutputDriver.h">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="308"> <state relative-caret-position="493">
<caret line="17" column="35" selection-start-line="17" selection-start-column="35" selection-end-line="17" selection-end-column="35" /> <caret line="38" column="51" selection-start-line="38" selection-start-column="51" selection-end-line="38" selection-end-column="51" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.cpp"> <entry file="file://$PROJECT_DIR$/FlippR-Driver/src/utility/networking/output/OutputRequestHandler.cpp">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="506"> <state relative-caret-position="10">
<caret line="195" column="58" selection-start-line="195" selection-start-column="58" selection-end-line="195" selection-end-column="58" /> <caret line="215" column="34" selection-start-line="215" selection-start-column="34" selection-end-line="215" selection-end-column="34" />
<folding> <folding>
<element signature="e#42#82#0" expanded="true" /> <element signature="e#42#82#0" expanded="true" />
</folding> </folding>

View File

@@ -32,6 +32,10 @@ public:
virtual void activate_displays() const = 0; virtual void activate_displays() const = 0;
virtual void deactivate_displays() const = 0; virtual void deactivate_displays() const = 0;
virtual void deactivate_all_lamps() const;
virtual void activate_all_lamps() const;
virtual void rotate_all_lamps() const;
virtual std::vector<std::shared_ptr<items::Lamp>> get_lamps() const = 0; virtual std::vector<std::shared_ptr<items::Lamp>> get_lamps() const = 0;
virtual std::vector<std::shared_ptr<items::Solenoid>> get_solenoids() const = 0; virtual std::vector<std::shared_ptr<items::Solenoid>> get_solenoids() const = 0;
virtual std::vector<std::shared_ptr<items::Sound>> get_sounds() const = 0; virtual std::vector<std::shared_ptr<items::Sound>> get_sounds() const = 0;

View File

@@ -7,6 +7,7 @@
#include <boost/range/adaptor/map.hpp> #include <boost/range/adaptor/map.hpp>
#include <boost/range/algorithm/copy.hpp> #include <boost/range/algorithm/copy.hpp>
#include <thread>
#include "OutputDriver.h" #include "OutputDriver.h"
@@ -37,6 +38,28 @@ void OutputDriver::deactivate_displays() const
display_controller->deactivate_displays(); display_controller->deactivate_displays();
} }
void OutputDriver::deactivate_all_lamps() const
{
std::for_each(lamps.begin(), lamps.end(), [](items::Lamp& lamp){lamp.deactivate();});
}
void OutputDriver::activate_all_lamps() const
{
std::for_each(lamps.begin(), lamps.end(), [](items::Lamp& lamp){lamp.activate();});
}
void OutputDriver::rotate_all_lamps() const
{
for(auto lamp = lamps.begin(); lamp != lamps.end(); lamp++)
{
lamp->second->activate();
// ToDo sleep time + is this thread safe??
std::this_thread::sleep_for(std::chrono::milliseconds(10));
lamp->second->deactivate();
}
}
std::vector<std::shared_ptr<Sound>> OutputDriver::get_sounds() const std::vector<std::shared_ptr<Sound>> OutputDriver::get_sounds() const
{ {
std::vector<std::shared_ptr<Sound>> sounds; std::vector<std::shared_ptr<Sound>> sounds;
@@ -93,6 +116,7 @@ boost::optional<std::shared_ptr<items::Display>> OutputDriver::get_display(uint8
return this->displays.find(number)->second; return this->displays.find(number)->second;
} }
} }
} /* namespace output */ } /* namespace output */
} }

View File

@@ -23,13 +23,20 @@ namespace detail
class OutputDriver : public output::OutputDriver class OutputDriver : public output::OutputDriver
{ {
public: public:
OutputDriver(std::unique_ptr<output::DisplayController> display_controller, std::map<std::string, std::shared_ptr<items::Solenoid>> solenoids, std::map<std::string, std::shared_ptr<items::Lamp>> lamps, std::map<std::string, std::shared_ptr<items::Sound>> sounds, std::map<uint8_t, std::shared_ptr<output::items::Display>> displays); OutputDriver(std::unique_ptr<output::DisplayController> display_controller, std::map<std::string, std::shared_ptr<items::Solenoid>> solenoids,
std::map<std::string, std::shared_ptr<items::Lamp>> lamps, std::map<std::string, std::shared_ptr<items::Sound>> sounds,
std::map<uint8_t, std::shared_ptr<output::items::Display>> displays);
~OutputDriver() override = default; ~OutputDriver() override = default;
void activate_displays() const override; void activate_displays() const override;
void deactivate_displays() const override; void deactivate_displays() const override;
void deactivate_all_lamps() const override;
void activate_all_lamps() const override;
void rotate_all_lamps() const override;
// todo driver board run for activate/deactivate?
// todo what is flipper_relay ? // todo what is flipper_relay ?
std::vector<std::shared_ptr<items::Lamp>> get_lamps() const override; std::vector<std::shared_ptr<items::Lamp>> get_lamps() const override;
std::vector<std::shared_ptr<items::Solenoid>> get_solenoids() const override; std::vector<std::shared_ptr<items::Solenoid>> get_solenoids() const override;

View File

@@ -28,7 +28,7 @@ OutputRequestHandler::OutputRequestHandler(std::shared_ptr<output::OutputDriver>
* address/{item_type}/[item_name]/[action]/[score] * address/{item_type}/[item_name]/[action]/[score]
* *
* Where * Where
* {item_type} is either solenoids, lamps, sounds, displays * {item_type} is either solenoids, lamps, sounds, displays, or one of the two special events: activate and deactivate
* [item_name] is the string name of an item (optional if you want to get the list of all available items) * [item_name] is the string name of an item (optional if you want to get the list of all available items)
* [action] is the particular action for the item: * [action] is the particular action for the item:
* Solenoids: trigger * Solenoids: trigger
@@ -43,15 +43,29 @@ void OutputRequestHandler::handleRequest(HTTPServerRequest &request,
HTTPServerResponse &response) HTTPServerResponse &response)
{ {
auto path_segments = getPathSegments(URI(request.getURI())); auto path_segments = getPathSegments(URI(request.getURI()));
// ToDo catch exception
// fill up vector
for(int i = path_segments.size(); i < 4; i++)
{
path_segments.emplace_back("");
}
std::string item_type = path_segments.at(0); std::string item_type = path_segments.at(0);
std::string item_name = path_segments.at(1); std::string item_name = path_segments.at(1);
std::string action = path_segments.at(2); std::string action = path_segments.at(2);
std::string score = ""; std::string score = path_segments.at(3);
if(item_type == "displays") if(item_type == "deactivate")
{ {
score = path_segments.at(3); this->output_driver->deactivate_displays();
this->output_driver->deactivate_all_lamps();
return;
}
if(item_type == "activate")
{
this->output_driver->activate_displays();
return;
} }
response.setContentType("text/json"); response.setContentType("text/json");
@@ -105,7 +119,7 @@ boost::optional<Poco::JSON::Object> OutputRequestHandler::parseSolenoid(const st
if(item_name == "") if(item_name == "")
{ {
Poco::JSON::Object response; Poco::JSON::Object response;
response.set("solenoids", output_driver->get_solenoids()); response.set("solenoids", this->output_driver->get_solenoids());
return response; return response;
} }
@@ -135,7 +149,7 @@ boost::optional<Poco::JSON::Object> OutputRequestHandler::parseLamp(const std::s
if(item_name == "") if(item_name == "")
{ {
Poco::JSON::Object response; Poco::JSON::Object response;
response.set("lamps", output_driver->get_lamps()); response.set("lamps", this->output_driver->get_lamps());
return response; return response;
} }
@@ -169,7 +183,7 @@ boost::optional<Poco::JSON::Object> OutputRequestHandler::parseSound(const std::
if(item_name == "") if(item_name == "")
{ {
Poco::JSON::Object response; Poco::JSON::Object response;
response.set("sounds", output_driver->get_lamps()); response.set("sounds", this->output_driver->get_lamps());
return response; return response;
} }
@@ -199,9 +213,10 @@ boost::optional<Poco::JSON::Object> OutputRequestHandler::parseDisplay(const std
if(item_name == "") if(item_name == "")
{ {
Poco::JSON::Object response; Poco::JSON::Object response;
response.set("displays", output_driver->get_displays()); response.set("displays", this->output_driver->get_displays());
return response; return response;
} }
uint8_t display_number = std::stoi(item_name); uint8_t display_number = std::stoi(item_name);
auto opt_display = this->output_driver->get_display(display_number); auto opt_display = this->output_driver->get_display(display_number);
@@ -240,7 +255,6 @@ std::vector<std::string> OutputRequestHandler::getPathSegments(Poco::URI uri)
return path_segments; return path_segments;
} }
} }
} }

View File

@@ -37,7 +37,7 @@ SCENARIO("An EventHandler gets created", "[construction}")
THEN("It should register itself at the input_driver") THEN("It should register itself at the input_driver")
{ {
REQUIRE((bool)Verify(Method(input_driver_mock, register_event_handler).Using(&handler))); REQUIRE((bool)Verify(Method(input_driver_mock, register_event_handler).Using(&handler)));
} }
} }
} }

View File

@@ -10,16 +10,51 @@
#include "utility/LoggerFactory.h" #include "utility/LoggerFactory.h"
// testing purposes
#define private public
#include "output/items/detail/Lamp.h" #include "output/items/detail/Lamp.h"
using namespace flippR_driver::output; using namespace flippR_driver::output;
using namespace fakeit; using namespace fakeit;
SCENARIO("") SCENARIO("A Lamp gets activated")
{ {
GIVEN("A Lamp")
{
Mock<DriverBoardPinController> pin_controller;
Fake(Dtor(pin_controller));
When(Method(pin_controller, activate)).AlwaysReturn();
items::detail::Lamp lamp(std::make_shared<DriverBoardPinController>(pin_controller), 0, 0);
WHEN("The lamp gets activated")
{
lamp.activate();
THEN("It should call the pin_controller with itself")
{
REQUIRE((bool) Verify(Method(pin_controller, activate).Using(&lamp)));
}
}
}
}
SCENARIO("A Lamp gets deactivated")
{
GIVEN("A Lamp")
{
Mock<DriverBoardPinController> pin_controller;
Fake(Dtor(pin_controller));
When(Method(pin_controller, deactivate)).AlwaysReturn();
items::detail::Lamp lamp(std::make_shared<DriverBoardPinController>(pin_controller), 0, 0);
WHEN("The lamp gets deactivated")
{
lamp.deactivate();
THEN("It should call the pin_controller with itself")
{
REQUIRE((bool) Verify(Method(pin_controller, deactivate).Using(&lamp)));
}
}
}
} }

View File

@@ -5,6 +5,7 @@
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert * Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/ */
#include <output/DisplayController.h>
#include "catch.hpp" #include "catch.hpp"
#include "fakeit.hpp" #include "fakeit.hpp"
@@ -14,13 +15,24 @@
// testing purposes // testing purposes
#define private public #define private public
#include "output/OutputDriver.h" #include "output/detail/OutputDriver.h"
using namespace flippR_driver::output; using namespace flippR_driver;
using namespace fakeit; using namespace fakeit;
SCENARIO("") 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 outputDriver(std::make_unique<output::DisplayController>(display_controller), nullptr, nullptr, nullptr, nullptr);
output::detail::OutputDriver output_driver(std::make_unique<output::DisplayController>(display_controller), NULL, nullptr, nullptr, nullptr);
WHEN("The displays get activated")
{
}
}
} }