This Ruby application parses a Quake game log file and generates a report with information about kills.
- Ensure that you have Ruby installed on your system.
- Run bundle install to install dependencies
- Place the Quake game log file in the
resources
directory with the namequake_logs.txt
. - Run
rake run
to execute the application. - Run
rake test
to run the tests.
Several use cases were implemented as part of the development of the app, but edge cases were not covered. Exception handling was also not covered.
As it is now, the FileProcessor has too many responsibilities and doesn't have a end to end test. The case clause where the entries are handled should be moved elsewhere making it more modular and testable.
The log types, i.e: :kill, :client_connect
, are too loose in the code.
We can improve it by creating a Enum class.
For now, only the file at resources/quake_logs.txt
will be used to generate a report.
It's possible to improve it by reading through input.