Hello reviewer, thanks for taking your time to review this code. This code was completed over the weekend. I tried to time it at 4 hours per day. The code isnt perfect but i hope it will show you how i structure my code and verify it. I'll appreciate any feedback
This project uses .NET 8. Please make sure you have .NET 8 installed
To build the application, run $ dotnet build
To run it dotnet run --config config.json --input inputTransactions.csv --output output.csv
To run the unit tests $cd CubeLogic.TransactionsConverter.UnitTests dotnet test
Containerizing the application allow us to achieve consistent deployments environements across dev, testing and production. It also eliminate dependency issues because it packages all the required components into the container
To build and run this application using Docker, do the following
$ docker build -t transconv . //transconv is the image name in this example $ docker run -u root -v
$(pwd)/inputTransactions.csv:/app/inputTransactions.csv -v $ (pwd)/config.json:/app/config.json -v $(pwd)/output:/app/output transconv
//the above command runs the docker image build in previous command
//it use the root user to run container via -u root, you can subsistute this for a user of your choice
//It maps and mounts 3 volumes
// First, -v
###1.Performance profiling ###2.Integration tests ###3.Deployment into Cloud (Azure) ###4. Improve test coverage