Greetings to you, fearless developer!
We hope you will have as much fun answering that exam as we had creating it!
Godspeed! =)
— The LVL DEV team
- Clone the exam Git repository:
git clone https://github.com/lvlstudio/cs-exam.git cs-exam
- Create and checkout an
exam
branch, in which you will be working:
git checkout -b exam
-
Granted, that code is absolutely horrible. Yes, I did write it, but I had to rewire my brain completely in order to achieve such horror. Don't expect to find anything close to that in our code, here at LVL! ;)
-
The present document is a
README.md
file located in the root of the repository. Answer questions directly in that file, except for those where code needs to be modified. -
When you are done with the exam, make sure all your changes are committed locally, archive your entire
cs-exam
working folder into anexam.zip
file and send it to us. -
That's it! Thanks for taking the time, you can now sit back and relax. We will review your exam and contact you as soon as we can!
What the heck is this program doing?
Answer here
What issues (if any?!?) do you see in that code? Order them from "most apocalyptic" to "little less insane".
- Answer here
- ...
Refactor the code to address most issues you identified in previous question (or, if there weren't any, you may just skip this question… and the next!)
- The code uses a REST API with dummy data, located at
http://jsonplaceholder.typicode.com/
. You may want to have a look at that site to help you understand the API, as you may use any of its endpoints. - You can do anything with that code, as if it were a real project you were assigned to.
- Hint: Keep question 4 in mind while working on this one.
Write just a few unit tests for your code, focusing on its essential aspects.
- You may use the NUnit 3.9.0 NuGet package, already imported into the project, or any other framework.
Do you have any comments on this exam or anything else you would like to mention?
Answer here