12 #include <boost/system/error_code.hpp>
15 #include "gtest/gtest.h"
18 namespace dpyUtilsGpio {
20 #define EXPORT_GPIO_PATH "/sys/class/gpio/export"
21 #define UNEXPORT_GPIO_PATH "/sys/class/gpio/unexport"
22 #define GPIO_PATH "/sys/class/gpio/gpio"
75 static std::map<int, dpyUtilsGpio::Edge> s_mapEdge;
80 static std::map<dpyUtilsGpio::Functionality, std::string> EP100GpioNumMap = { {dpyUtilsGpio::DO0,
"115"}, {
dpyUtilsGpio::DO1,
"121"}, {
dpyUtilsGpio::DO2,
"122"}, {
dpyUtilsGpio::DI0,
"65"}, {
dpyUtilsGpio::DI1,
"66"}, {
dpyUtilsGpio::DI2,
"67"}};
96 std::string getGpioNum();
99 explicit Gpio(std::string gnum);
109 bool createGpio(boost::system::error_code& ec);
110 bool deleteGpio(boost::system::error_code& ec);
116 virtual bool getEdgeGpio(boost::system::error_code& ec,
enum dpyUtilsGpio::EDGE& edge);
128 FRIEND_TEST(Basic_gpio_tests, create_GPIO_OK);
129 FRIEND_TEST(Basic_gpio_tests, create_GPIO_IO_ERROR);
130 FRIEND_TEST(Basic_gpio_tests, create_GPIO_NO_EFFECT);
131 FRIEND_TEST(Basic_gpio_tests, delete_GPIO_OK);
132 FRIEND_TEST(Basic_gpio_tests, delete_GPIO_IO_ERROR);
133 FRIEND_TEST(Basic_gpio_tests, delete_GPIO_ERROR);
134 FRIEND_TEST(Basic_gpio_tests, get_dir_INPUT_OK);
135 FRIEND_TEST(Basic_gpio_tests, get_dir_OUTPUT_OK);
136 FRIEND_TEST(Basic_gpio_tests, get_dir_ERROR);
137 FRIEND_TEST(Basic_gpio_tests, get_dir_BAD_PARAMETER);
138 FRIEND_TEST(Basic_gpio_tests, set_edge_OK);
139 FRIEND_TEST(Basic_gpio_tests, get_edge_OK);
140 FRIEND_TEST(Basic_gpio_tests, get_val_OK);
141 FRIEND_TEST(Basic_gpio_tests, get_val_ERROR);
142 FRIEND_TEST(Basic_gpio_tests, get_val_BAD_PARAMETER);
143 FRIEND_TEST(Basic_gpio_tests, get_edge_OK);
144 FRIEND_TEST(Basic_gpio_tests, get_edge_ERROR);
145 FRIEND_TEST(Basic_gpio_tests, get_edge_BAD_PARAMETER);
146 FRIEND_TEST(Advanced_gpio_tests, set_dir_OK_NO_EFFECT);
147 FRIEND_TEST(Advanced_gpio_tests, set_dir_NOT_OBTAIN_VALUE);
148 FRIEND_TEST(Advanced_gpio_tests, set_dir_NOT_OBTAIN_VALUE_2);
149 FRIEND_TEST(Advanced_gpio_tests, set_dir_BAD_PARAMETER);
150 FRIEND_TEST(Advanced_gpio_tests, set_dir_NOT_PERMITTED);
151 FRIEND_TEST(Advanced_gpio_tests, set_val_OK_0);
152 FRIEND_TEST(Advanced_gpio_tests, set_val_OK_1);
153 FRIEND_TEST(Advanced_gpio_tests, set_val_BAD_PARAMETER);
154 FRIEND_TEST(Advanced_gpio_tests, set_val_IO_ERROR);
155 FRIEND_TEST(Advanced_gpio_tests, set_val_NOT_OBTAIN_VALUE);
156 FRIEND_TEST(Advanced_gpio_tests, set_val_NOT_PERMITTED);
157 FRIEND_TEST(Advanced_gpio_tests, set_val_NOT_PERMITTED_2);
158 FRIEND_TEST(Advanced_gpio_tests, set_edge_OK);
159 FRIEND_TEST(Advanced_gpio_tests, set_edge_NOT_PERMITTED);
160 FRIEND_TEST(Advanced_gpio_tests, set_edge_BAD_PARAMETER);
161 FRIEND_TEST(Advanced_gpio_tests, set_edge_NOT_OBTAIN_VALUE);
162 FRIEND_TEST(Advanced_gpio_tests_2, switch_options_OK_1);
163 FRIEND_TEST(Advanced_gpio_tests_2, switch_options_OK_2);
164 FRIEND_TEST(Advanced_gpio_tests_2, switch_options_ERROR_1);
165 FRIEND_TEST(Advanced_gpio_tests_2, switch_options_ERROR_2);