diff --git a/.codeclimate.yml b/.codeclimate.yml index 99383daf4..871a1abe5 100644 --- a/.codeclimate.yml +++ b/.codeclimate.yml @@ -20,8 +20,15 @@ engines: enabled: true fixme: enabled: true + config: + strings: + - FIXME + - TODO + - HACK rubocop: enabled: true + reek: + enabled: true ratings: paths: - Gemfile.lock diff --git a/.travis.yml b/.travis.yml index bbf9797a3..b49edd8e2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,6 +14,8 @@ before_script: - "RAILS_ENV=test bundle exec rake db:migrate" script: - "RAILS_ENV=test bundle exec rspec" +after_success: + - "bundle exec codeclimate-test-reporter" services: - postgresql addons: diff --git a/Gemfile b/Gemfile index d570ed721..4d039cd92 100644 --- a/Gemfile +++ b/Gemfile @@ -8,10 +8,11 @@ end if Bundler::VERSION < '2' source 'https://rubygems.org' # core -gem 'rails', '4.2.7.1' # when update, all initializers eis_custom files needs check/update -gem 'iso8601', '0.8.6' # for dates and times -gem 'hashie-forbidden_attributes', '0.1.1' + gem 'SyslogLogger', '2.0', require: 'syslog/logger' +gem 'hashie-forbidden_attributes', '0.1.1' +gem 'iso8601', '0.8.6' # for dates and times +gem 'rails', '4.2.7.1' # when update, all initializers eis_custom files needs check/update gem 'rest-client' # load env @@ -34,45 +35,46 @@ gem 'haml-rails', '0.9.0' # haml for views gem 'nokogiri', '1.7.1' # For XML parsing # style -gem 'sass-rails', '5.0.6' # sass style gem 'bootstrap-sass', '3.3.5.1' # bootstrap style +gem 'sass-rails', '5.0.6' # sass style # js -gem 'uglifier', '2.7.2' # minifies js + gem 'coffee-rails', '4.1.0' # coffeescript support -gem 'turbolinks', '2.5.3' # faster page load +gem 'uglifier', '2.7.2' # minifies js gem 'jquery-rails', '4.0.4' # jquery +gem 'turbolinks', '2.5.3' # faster page load gem 'selectize-rails', '0.12.1' # include selectize.js for select -gem 'therubyracer', '0.12.2', platforms: :ruby gem 'jquery-validation-rails', '1.13.1' # validate on client side +gem 'therubyracer', '0.12.2', platforms: :ruby # view helpers gem 'kaminari', '0.16.3' # pagination -gem 'nprogress-rails', '0.1.6.7' # visual loader -gem 'html5_validators', '1.2.2' # model requements now automatically on html form gem 'coderay', '1.1.0' # xml console visualize +gem 'html5_validators', '1.2.2' # model requements now automatically on html form +gem 'nprogress-rails', '0.1.6.7' # visual loader gem 'select2-rails', '3.5.9.3' # for autocomplete gem 'bootstrap-datepicker-rails', '1.3.1.1' # datepicker gem 'liquid', '3.0.6' # for email templates # rights -gem 'devise', '3.5.4' # authenitcation gem 'cancancan', '1.11.0' # autharization +gem 'devise', '3.5.4' # authenitcation # rest api gem 'grape', '0.12.0' gem 'jbuilder', '2.2.16' # json api # registry specfic -gem 'simpleidn', '0.0.7' # For punycode gem 'isikukood' # for EE-id validation +gem 'simpleidn', '0.0.7' # For punycode gem 'money-rails' # deploy -gem 'whenever', '0.9.4', require: false gem 'data_migrate', github: 'internetee/data-migrate', ref: '35d22b09ff37a4e9d61ab326ad5d8eb0edf1fc81' +gem 'whenever', '0.9.4', require: false # country listing gem 'countries', :require => 'countries/global' @@ -81,7 +83,7 @@ gem 'countries', :require => 'countries/global' gem 'deep_cloneable', '2.1.1' # id + mid login -#gem 'digidoc_client', '0.3.0' +# gem 'digidoc_client', '0.3.0' gem 'digidoc_client', github: 'tarmotalu/digidoc_client', branch: 'master' @@ -93,8 +95,8 @@ gem 'uuidtools', '2.1.5' # For unique IDs (used by the epp gem) # que gem 'que', '0.10.0' -gem 'que-web', '0.4.0' gem 'daemons-rails', '1.2.1' +gem 'que-web', '0.4.0' gem 'que_mailer', github: 'prehnRA/que-mailer', branch: 'master' @@ -108,14 +110,17 @@ gem 'pdfkit', '0.6.2' # for datepicker gem 'jquery-ui-rails', '5.0.5' +# codeclimate + + group :development do + gem 'guard', '2.12.9' # run tests automatically gem 'spring', '1.3.6' gem 'spring-commands-rspec', '1.0.4' - gem 'guard', '2.12.9' # run tests automatically - gem 'guard-rspec', '4.5.2' gem 'guard-rails', '0.7.1' # run EPP server automatically - gem 'rubocop', '0.48.1' + gem 'guard-rspec', '4.5.2' gem 'guard-rubocop', '1.2.0' + gem 'rubocop', '0.48.1' # deploy gem 'mina', '0.3.1' # for fast deployment @@ -123,24 +128,21 @@ end group :development, :test do # test stack - gem 'rspec-rails', '3.5.2' gem 'capybara', '2.4.4' - gem 'phantomjs-binaries', '1.9.2.4' - gem 'poltergeist', '1.6.0' # We are using PhantomJS instead - gem 'phantomjs', '1.9.8.0' + gem 'rspec-rails', '3.5.2' gem 'fabrication', '2.13.2' # Replacement for fixtures + gem 'phantomjs-binaries', '1.9.2.4' + gem 'phantomjs', '1.9.8.0' + gem 'poltergeist', '1.6.0' # We are using PhantomJS instead gem 'launchy', '2.4.3' # for opening browser automatically # debug gem 'pry', '0.10.1' # code review - gem 'simplecov', '0.10.0', require: false gem 'rubycritic', '3.2.0' gem 'bullet', '4.14.7' # for finding database optimizations - gem 'bundler-audit', - github: 'rubysec/bundler-audit', - ref: 'f89ef7fae1090bbad825ea76812d56d72b417055' # for finding future vulnerable gems + gem 'bundler-audit' gem 'brakeman', '3.6.1', require: false # for security audit' # tmp, otherwise conflics with breakman # gem 'html2haml', github: 'haml/html2haml', ref: '6984f50bdbbd6291535027726a5697f28778ee8d' @@ -159,6 +161,8 @@ end group :test do gem 'database_cleaner' - gem 'factory_girl_rails' + gem 'factory_girl_rails' + gem 'codeclimate-test-reporter', "~> 1.0.0" + gem 'simplecov' gem 'webmock' end diff --git a/Gemfile.lock b/Gemfile.lock index f49dab70d..c314d836d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -44,15 +44,6 @@ GIT que (~> 0.6) rails (>= 4.0) -GIT - remote: https://github.com/rubysec/bundler-audit.git - revision: f89ef7fae1090bbad825ea76812d56d72b417055 - ref: f89ef7fae1090bbad825ea76812d56d72b417055 - specs: - bundler-audit (0.4.0) - bundler (~> 1.2) - thor (~> 0.18) - GIT remote: https://github.com/tarmotalu/digidoc_client.git revision: 1645e83a5a548addce383f75703b0275c5310c32 @@ -137,6 +128,9 @@ GEM bullet (4.14.7) activesupport (>= 3.0.0) uniform_notifier (~> 1.9.0) + bundler-audit (0.5.0) + bundler (~> 1.2) + thor (~> 0.18) cancancan (1.11.0) capybara (2.4.4) mime-types (>= 1.16) @@ -148,6 +142,8 @@ GEM cliver (0.3.2) codeclimate-engine-rb (0.4.0) virtus (~> 1.0) + codeclimate-test-reporter (1.0.8) + simplecov (<= 0.13) coderay (1.1.0) coercible (1.0.0) descendants_tracker (~> 0.0.1) @@ -570,9 +566,10 @@ DEPENDENCIES bootstrap-sass (= 3.3.5.1) brakeman (= 3.6.1) bullet (= 4.14.7) - bundler-audit! + bundler-audit cancancan (= 1.11.0) capybara (= 2.4.4) + codeclimate-test-reporter (~> 1.0.0) coderay (= 1.1.0) coffee-rails (= 4.1.0) countries @@ -631,7 +628,7 @@ DEPENDENCIES sdoc (= 0.4.1) select2-rails (= 3.5.9.3) selectize-rails (= 0.12.1) - simplecov (= 0.10.0) + simplecov simpleidn (= 0.0.7) spring (= 1.3.6) spring-commands-rspec (= 1.0.4) diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 68a2c0be1..0f9fd4e8d 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -1,4 +1,7 @@ require 'webmock/rspec' +require 'simplecov' +SimpleCov.start + RSpec.configure do |config| # https://github.com/rspec/rspec-rails/issues/1076