Skip to content

Latest commit

 

History

History
69 lines (59 loc) · 4.09 KB

README.md

File metadata and controls

69 lines (59 loc) · 4.09 KB

Build Status

Viewing Party

This is the base repo for the viewing party project used for Turing's Backend Module 3.

About this Project

Viewing party is an application in which users can explore movie options and create a viewing party event for the user and friend's. You can check out our site here!

Contributors

Schema

Built With

  • Ruby on Rails
  • JQuery

Important Gems(Libraries):

Getting Started

  1. Get an api key from The Movie Database API
  2. Fork and clone the repo
  3. Install any missing gems from gem file
  4. Create, seed and migrate the database with $ rails db:{create,migrate,seed}
  5. In config/application.ymal paste: MOVIEDB_API_KEY: "<YOUR API KEY>" Replace with the key you obtained from The Movie Database API.
  6. From your terminal run $ rails s and navigate to http://localhost:3000/ in your browser to navigate the app

Testing

  • RSpec and Capybara were used for unit and integration testing and project development adhered to TDD principles.
  • Travis-CI was used for continuous integration ensuring any changes pushed to the main branch did not break any previously implemented tests.
  • Simplecov was used to track total test coverage and as of 12/10/2020 shows 100% coverage.
  • Webmock and VCR gems were used to stub out API calls in the test suite. When running RSpec for the first time real responses from the Movie Database API will be recorded as 'cassettes' and kept as .yml files in the 'spec/fixtures' directory. The cassettes are set to expire 7 days from creation and will re-record when RSpec is run again after that 7 day period.
  • To run our test suite, RSpec, enter $ bundle exec rspec in the terminal. (All 98 tests should be passing).
  • To see a coverage report enter $ open coverage/index.html

Future Changes

  1. Full CRUD functionality for users, parties, friendships, party_guests.
  2. Add friends to existing parties, organize parties on dashboard by upcoming/past.
  3. Friend request system: friendships only created once request accepted
  4. Utilize Actionmailer to send viewing party event details to users.
  5. Implement Chat functionality with ActionCable
  6. Deploy to a different service other than Heroku

Additonal References