v1 -> v2: - drop applied patches - improve documentation - skip offsets that are overridden in line_config but not actually requested v2 -> v3: - add a patch adding an enum for line values - rework the mechanism for retrieving overrides - add new "constructors" for line_config - incorporate part of Kent's points in the documentation - a bunch of improvements to tests as per Kent's reviews v3 -> v4: - drop the new constructors added in v3 - improve the docs for override interfaces - use NUM_OVERRIDES_MAX when referring to the max number of overrides Bartosz Golaszewski (2): line-config: expose the override logic to users tests: rewrite core C tests using libgpiosim configure.ac | 8 +- include/gpiod.h | 573 ++++++++++++------ lib/line-config.c | 808 ++++++++++++++++--------- tests/Makefile.am | 22 +- tests/gpiod-test-helpers.c | 49 ++ tests/gpiod-test-helpers.h | 139 +++++ tests/gpiod-test-sim.c | 308 ++++++++++ tests/gpiod-test-sim.h | 42 ++ tests/gpiod-test.c | 233 +------- tests/gpiod-test.h | 83 +-- tests/gpiosim/gpiosim.c | 1 + tests/mockup/Makefile.am | 11 - tests/mockup/gpio-mockup.c | 496 ---------------- tests/mockup/gpio-mockup.h | 36 -- tests/tests-chip.c | 282 ++++----- tests/tests-edge-event.c | 490 +++++++++++++++ tests/tests-event.c | 908 ---------------------------- tests/tests-info-event.c | 301 ++++++++++ tests/tests-line-config.c | 457 ++++++++++++++ tests/tests-line-info.c | 318 ++++++++++ tests/tests-line-request.c | 526 ++++++++++++++++ tests/tests-line.c | 1091 ---------------------------------- tests/tests-misc.c | 80 ++- tests/tests-request-config.c | 90 +++ tools/gpioget.c | 6 +- tools/gpiomon.c | 6 +- tools/gpioset.c | 9 +- 27 files changed, 3878 insertions(+), 3495 deletions(-) create mode 100644 tests/gpiod-test-helpers.c create mode 100644 tests/gpiod-test-helpers.h create mode 100644 tests/gpiod-test-sim.c create mode 100644 tests/gpiod-test-sim.h delete mode 100644 tests/mockup/Makefile.am delete mode 100644 tests/mockup/gpio-mockup.c delete mode 100644 tests/mockup/gpio-mockup.h create mode 100644 tests/tests-edge-event.c delete mode 100644 tests/tests-event.c create mode 100644 tests/tests-info-event.c create mode 100644 tests/tests-line-config.c create mode 100644 tests/tests-line-info.c create mode 100644 tests/tests-line-request.c delete mode 100644 tests/tests-line.c create mode 100644 tests/tests-request-config.c -- 2.30.1