Practice Problem Portal

Build Status Code Climate Test Coverage

Description

An easy web interface for students to complete practice problems and for administrators to create practice problems. Details on the client's goals can be found here

Getting Started

Our CS169 course used ruby '1.9.3' and rails '3.2.16'; problems may occur if you are using an older or newer version. run bundle install. Be sure to also rake db:setup to have migrations and test prepare ready to go.

Run rails server and enjoy your practice problem portal!

Documentation

Gems

  1. devise
  2. bootstrap
  3. redcarpet
  4. jquery-datatables-rails
  5. ransack
  6. acts-as-taggable-on
  7. factory_girl_rails

Problems

  1. Model
  • Title, Tags, Difficulty, Description, Solution
  1. View
  • Index and show
  1. Controller
  • Problems can only be created and modified by Instructors
  • Problems can be viewed and completed by Students

Students

  1. Model
  • Email and a hash of completed problems
  1. View
  • Can view profile page to see current progress on problems
  1. Controller
  • Can complete problems after checkmarking completed and hitting save
  • Signup from devise

Instructors

  1. Model
  • Email
  1. View
  • Can create or modify problems
  • Can view list of all students as well as their progress
  1. Controller
  • Signup from devise

Testing

Rspec

Most coverage completed from rspecs. Tests can be found under /spec

Cucumwhat

Our group wrote tests for our features, but considering most features were taken from using gems that have been tested already, there was no need to write such tedious tests. Great Coverage was achieved through rspecs.