This project has two test cases you need to make pass.
- Displaying the min, max, median and average for a data set.
- Discover under-performing periods of download performance.
We don't expect it'll take you more than an two hours to do. If you do submit it without doing everything you'd like to do, then add a TODO file in root with the changes you'd like to make and document any assumptions made during the implementation.
In the data provided, dtime represents the date of the measurement and metricValue represents the measurement in bytes per second.
This is a quick test put together by the backend team at SamKnows to test your skills in writing clear business logic and testing code (functional and unit). We've setup a base project using Symfony 4 with Flex and Docker.
Your task is to:
- Write well structured code to pass the failing test suite.
- Write unit tests to cover your new code.
- Write clear and concise commit messages.
- Conform to PSR-2 standards and pass phpstan's strict checks.
- Remember this repository is a base, modify it how you see fit!
We're also looking for accurate phpDocs where appropriate.
The failing test: AppAnalyseMetricsCommandTest is where you need to be starting, you'll also find detailed comments as well as references to the inputs and expected output. Look at #testing section to see how you'll run the tests.
Ensure you've got Docker Compose installed, then run:
make test
to run the test suite. You can also use
make shell
to jump into the container to run composer, etc ...
Add jmwri and skroberto to your private GitHub repo so we can see your code. Thank you and good luck!