From: Bartosz Golaszewski Date: Mon, 12 Aug 2019 14:44:48 +0000 (+0200) Subject: bindings: cxx: tests: simplify the event fd polling test case X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=262d3dd46cc3db0b9b586df017430d0a15848559;p=qemu-gpiodev%2Flibgpiod.git bindings: cxx: tests: simplify the event fd polling test case The mapping of file descriptors to lines was copied over from the pre-catch2 set of C++ examples. It's not needed here as we know which line the event will be generated on. While at it: use a vector for the pollfd array. Signed-off-by: Bartosz Golaszewski --- diff --git a/bindings/cxx/tests/tests-event.cpp b/bindings/cxx/tests/tests-event.cpp index b41cf7e..8713333 100644 --- a/bindings/cxx/tests/tests-event.cpp +++ b/bindings/cxx/tests/tests-event.cpp @@ -7,7 +7,6 @@ #include #include -#include #include #include "gpio-mockup.hpp" @@ -166,7 +165,6 @@ TEST_CASE("Event file descriptors can be used for polling", "[event]") mockup::probe_guard mockup_chips({ 8 }); mockup::event_thread events(0, 3, 200); ::gpiod::chip chip(mockup::instance().chip_name(0)); - ::std::map fd_line_map; auto lines = chip.get_lines({ 0, 1, 2, 3, 4, 5 }); ::gpiod::line_request config; @@ -175,24 +173,20 @@ TEST_CASE("Event file descriptors can be used for polling", "[event]") lines.request(config); - fd_line_map[lines[1].event_get_fd()] = lines[1]; - fd_line_map[lines[3].event_get_fd()] = lines[3]; - fd_line_map[lines[5].event_get_fd()] = lines[5]; - - ::pollfd fds[3]; + ::std::vector<::pollfd> fds(3); fds[0].fd = lines[1].event_get_fd(); fds[1].fd = lines[3].event_get_fd(); fds[2].fd = lines[5].event_get_fd(); fds[0].events = fds[1].events = fds[2].events = POLLIN | POLLPRI; - int ret = ::poll(fds, 3, 1000); + int ret = ::poll(fds.data(), 3, 1000); REQUIRE(ret == 1); for (int i = 0; i < 3; i++) { if (fds[i].revents) { - auto event = fd_line_map[fds[i].fd].event_read(); - REQUIRE(event.source == fd_line_map[fds[i].fd]); + auto event = lines[3].event_read(); + REQUIRE(event.source == lines[3]); REQUIRE(event.event_type == ::gpiod::line_event::RISING_EDGE); } }