diff --git a/Gemfile b/Gemfile index 79e61f5..da9454d 100644 --- a/Gemfile +++ b/Gemfile @@ -14,7 +14,7 @@ gem 'decent_exposure', '~> 1.0.1' gem 'devise', '~> 2.0.4' gem 'haml-rails', '~> 0.3.4' gem 'jquery-rails', '~> 2.0' -gem 'pg' +gem 'pg', '~> 0.17.1' gem 'will_paginate', '~> 3.0.3' # Gems used only for assets and not required @@ -33,17 +33,18 @@ group :development, :test do gem 'rspec-rails', '~> 2.14.0' gem 'factory_girl_rails', '~> 1.2' gem 'pry', '~> 0.9.8' - gem 'faker' + gem 'faker', '~> 1.2.0' end group :test do gem 'shoulda-matchers', '~> 1.0.0' - gem 'capybara', '~> 1.1.2' - gem 'database_cleaner' - gem 'launchy' - gem 'spork' + gem 'capybara', '~> 2.2.1' + gem 'poltergeist', '~> 1.5.0' + gem 'database_cleaner', '~> 1.2.0' + gem 'launchy', '~> 2.4.2' + gem 'spork', '~> 0.9.2' #guard dependency for Mac OS 10 gem 'rb-fsevent', :require => false if RUBY_PLATFORM =~ /darwin/i - gem 'guard-spork' - gem 'guard-rspec' + gem 'guard-spork', '~> 1.5.1' + gem 'guard-rspec', '~> 4.2.6' end diff --git a/Gemfile.lock b/Gemfile.lock index de17de5..2d2cc25 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -43,17 +43,17 @@ GEM will_paginate builder (3.0.4) cancan (1.6.10) - capybara (1.1.4) + capybara (2.2.1) mime-types (>= 1.16) nokogiri (>= 1.3.3) rack (>= 1.0.0) rack-test (>= 0.5.4) - selenium-webdriver (~> 2.0) - xpath (~> 0.1.4) + xpath (~> 2.0) celluloid (0.15.2) timers (~> 1.1.0) - childprocess (0.3.9) + childprocess (0.4.0) ffi (~> 1.0, >= 1.0.11) + cliver (0.3.2) coderay (1.1.0) coffee-rails (3.2.2) coffee-script (>= 2.2.0) @@ -61,7 +61,7 @@ GEM coffee-script (2.2.0) coffee-script-source execjs - coffee-script-source (1.6.3) + coffee-script-source (1.7.0) commonjs (0.2.7) database_cleaner (1.2.0) decent_exposure (1.0.2) @@ -70,7 +70,7 @@ GEM orm_adapter (~> 0.0.3) railties (~> 3.1) warden (~> 1.1.1) - diff-lcs (1.1.3) + diff-lcs (1.2.5) erubis (2.7.0) execjs (2.0.2) factory_girl (2.6.4) @@ -82,14 +82,15 @@ GEM i18n (~> 0.5) ffi (1.9.3) formatador (0.2.4) - guard (2.2.5) + guard (2.4.0) formatador (>= 0.2.4) listen (~> 2.1) lumberjack (~> 1.0) pry (>= 0.9.12) thor (>= 0.18.1) - guard-rspec (1.2.1) - guard (>= 1.1) + guard-rspec (4.2.6) + guard (~> 2.1) + rspec (>= 2.14, < 4.0) guard-spork (1.5.1) childprocess (>= 0.2.3) guard (>= 1.1) @@ -115,7 +116,7 @@ GEM actionpack (>= 3.1) less (~> 2.2.0) libv8 (3.3.10.4) - listen (2.4.0) + listen (2.4.1) celluloid (>= 0.15.2) rb-fsevent (>= 0.9.3) rb-inotify (>= 0.9) @@ -139,8 +140,13 @@ GEM mini_portile (~> 0.5.0) orm_adapter (0.0.7) pg (0.17.1) + poltergeist (1.5.0) + capybara (~> 2.1) + cliver (~> 0.3.1) + multi_json (~> 1.0) + websocket-driver (>= 0.2.0) polyglot (0.3.3) - pry (0.9.12.4) + pry (0.9.12.6) coderay (~> 1.0) method_source (~> 0.8) slop (~> 3.4) @@ -172,10 +178,14 @@ GEM ffi (>= 0.5.0) rdoc (3.12.2) json (~> 1.4) + rspec (2.14.1) + rspec-core (~> 2.14.0) + rspec-expectations (~> 2.14.0) + rspec-mocks (~> 2.14.0) rspec-core (2.14.7) - rspec-expectations (2.14.4) + rspec-expectations (2.14.5) diff-lcs (>= 1.1.3, < 2.0) - rspec-mocks (2.14.4) + rspec-mocks (2.14.5) rspec-rails (2.14.1) actionpack (>= 3.0) activemodel (>= 3.0) @@ -184,12 +194,6 @@ GEM rspec-core (~> 2.14.0) rspec-expectations (~> 2.14.0) rspec-mocks (~> 2.14.0) - rubyzip (1.1.0) - selenium-webdriver (2.39.0) - childprocess (>= 0.2.5) - multi_json (~> 1.0) - rubyzip (~> 1.0) - websocket (~> 1.0.4) shoulda-matchers (1.0.0) slop (3.4.7) spork (0.9.2) @@ -217,9 +221,9 @@ GEM json (>= 1.8.0) warden (1.1.1) rack (>= 1.0) - websocket (1.0.7) + websocket-driver (0.3.2) will_paginate (3.0.5) - xpath (0.1.4) + xpath (2.0.0) nokogiri (~> 1.3) PLATFORMS @@ -229,28 +233,29 @@ DEPENDENCIES acts_as_loggable! bootstrap-will_paginate (~> 0.0.6) cancan - capybara (~> 1.1.2) + capybara (~> 2.2.1) coffee-rails (~> 3.2.1) - database_cleaner + database_cleaner (~> 1.2.0) decent_exposure (~> 1.0.1) devise (~> 2.0.4) factory_girl_rails (~> 1.2) - faker - guard-rspec - guard-spork + faker (~> 1.2.0) + guard-rspec (~> 4.2.6) + guard-spork (~> 1.5.1) haml-rails (~> 0.3.4) jquery-rails (~> 2.0) - launchy + launchy (~> 2.4.2) netzke-basepack (~> 0.8.0) netzke-cancan netzke-core (~> 0.8.0) - pg + pg (~> 0.17.1) + poltergeist (~> 1.5.0) pry (~> 0.9.8) rails (= 3.2.13) rb-fsevent rspec-rails (~> 2.14.0) shoulda-matchers (~> 1.0.0) - spork + spork (~> 0.9.2) twitter-bootstrap-rails (~> 2.0.3) uglifier (>= 1.0.3) will_paginate (~> 3.0.3) diff --git a/README.md b/README.md index c7a7193..aa4e2f0 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,11 @@ At Velocipede, with a mobile friendly UI for users, I'm hoping we can get donati 1. Create your PG user `createuser -d -P velocipede` 1. Create your database `createdb -U velocipede --owner=velocipede velocipede` +# Testing + +1. Install phantomjs `brew install phantomjs` +1. Run tests with `rspec` + # Optional Add icons diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index cb37a6d..797cabf 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -1,6 +1,7 @@ require 'rubygems' require 'spork' require 'rails' +require 'capybara/poltergeist' #uncomment the following line to use spork with the debugger #require 'spork/ext/ruby-debug' @@ -24,6 +25,8 @@ Spork.prefork do # in spec/support/ and its subdirectories. Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f} + Capybara.javascript_driver = :poltergeist + RSpec.configure do |config| # ## Mock Framework #