ACD - Backend Test

Using the provided application add the following features:

  • Authentication. Using shield. Make sure to add a current_user method to roda. Hook it into the login component. Make sure you can't access the root url without being logged in.

  • Registration. Hook this into the login component and make sure it saves to the sqlite3 database using sequel.

  • Tasks. Ability to add/remove and mark tasks as read for each user, saving to the database. Make sure to add a datepicker to the due date field.

  • Lists. (Each user should be able to view other users todo lists but NOT have permission to edit/delete tasks.

  • Bonus. Make an API. Display all users and the task count. Display a single user and all their tasks.

Please use RSPEC to create tests

To install please run make install and then make to start the server.

Running Tests

For run the test you must create a file named .env.test and have a test.db file

#.env.test
DATABASE_URL=sqlite://test.db

Then run: RACK_ENV=test rake db:refresh; RACK_ENV=test rake db:seed; rspec spec

Other Useful Documentation:

Please fork this repository and commit each step of your process.