Problem Statement
The code added in #1236 could not be tested throughly to reach a sufficient test coverage. In particular, there was a way missing to mock a device implementation such that to test all corner cases in the FoMaC implementation.
Proposed Solution
This issue aims to setup a framework that allows to flexibiliy mock a device without having to implement an entire device for each test case. Due to the way QDMI works, the currently imagined way is to implement a generic QDMI device that offers additional functions that can be called from tests to set the next return value of respective functions. These additional functions have to be loaded from the shared library as well. This probably happens in the tests through another call to dlopen and subsequent dlsym calls.
Problem Statement
The code added in #1236 could not be tested throughly to reach a sufficient test coverage. In particular, there was a way missing to mock a device implementation such that to test all corner cases in the FoMaC implementation.
Proposed Solution
This issue aims to setup a framework that allows to flexibiliy mock a device without having to implement an entire device for each test case. Due to the way QDMI works, the currently imagined way is to implement a generic QDMI device that offers additional functions that can be called from tests to set the next return value of respective functions. These additional functions have to be loaded from the shared library as well. This probably happens in the tests through another call to
dlopenand subsequentdlsymcalls.