I implemented some of the core methods in the existing classes skeletons using the models available in python.
I generated unit tests in Boost Test framework to validate the isolated behavior of the methods mentioned above.
I generated bindings in python for the classes mentioned above and used them in acceptance tests written in nosetest to compare the C++ code with Python.
I updated the python test procedure to allow more granularity in the validation of the C++ code base: with this improvement, instead of comparing the C++/python results only after a complex and long computation cycle, this cycle could be broken into smaller steps and the python inputs for each step could be injected into the C++ system before moving to the next comparison.
⇒ With the improvements on the test process, the acceptance tests could be used efficiently to detect mismatches in the C++ re-implementation and thus reduce the time needed for debugging cycle. During the project schedule, we provided about 80% of the implementation required for the FSI support, which matched the expectation of EUMETSAT and thus, this project was closed successfully.