In the last weeks I have been involved in getting deeper into becoming part of the development team of LibreMesh.
During that process, I worked together with NicoPace in writing this blogpost where we build a solid ground for unit testing: https://blog.freifunk.net/2019/06/03/gsoc-2019-evaluating-options-to-do-unit-and-integration-tests-in-libremesh-and-a-first-working-example/
Not covered by the last blog post is the work that I did in a fake/mock implementation of the
libuci library in lua. This allows writing a lot of tests for LibreMesh as
ucithe most used library in the codebase that make sense to write a mock. The implementation is very small but covers the most used functionality of libuci:
foreach(). This was implemented doing TDD with the support of the unittesting framework.
All this work is being done in the following branch of my
lime-packages fork: https://github.com/spiccinini/lime-packages/commits/unittest_docker
During the upcoming weeks all this work will be properly released as a PR to the
lime-packages repo accompanied by the Travis CI integration in a Docker container to do the tests in a contained environment, and more tests are going to follow 🙂