Skip to content

MikeO89/FacebowFileReader

Repository files navigation

Mimetrik Solutions Ltd - Technical Task - Unit Test & CI/CD Implementation

Introduction

Enclosed is one of our small utility library projects, called "FacebowFileReader", which is just a reader class for one of our custom file formats (.mfba). It also contains an example in main.cpp.

There is also a sample .mfba file enclosed.

For completeness I've also attached two pages from our docs on the mfba file format, but I don't think that those are needed.

On your on-site visit, we would like you to walk us through your solution, thought processes, discuss what worked and what perhaps didn't work, how you'd proceed from there, etc.

Lastly I want to say on behalf of all of us at Mimetrik that we see this task/exercise as both an opportunity for us to get to know your skills and working practice better, as well as for you to get an idea of the sort of tasks that we'd envisage you'd do if you were to join us.

Task 1 - Unit Tests

Your first task would be to write a set of unit tests that test the functionality and correctness of the FacebowFileReader - what, the number of tests, and the unit test framework is left up to your judgement.

Existing source code files should not be changed.

Task 2 - CI Integration

Write a CI script that automatically runs these tests on a CI system/portal of your choice.

Solution Overview

See document titled FacebowFileReader_SoltuionOverview

Disclaimer: the implementation by me was solely the unit tests and CI/CD pipelines. I am aware that the binary IO implementation is not optimal - the binary IO implementation was provided by Mimetrik and was not modifiable within the scope of the technical task. Should you wish to see an example of a low latency binary IO implementation written by me, then I refer you to my Simba repository.

About

C++ technical assessment: implementing unit testing and CI for Mimetrik's binary MFBA file reader

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published