/spec/rails_best_practices/core/error_spec.rb

http://github.com/flyerhzm/rails_best_practices · Ruby · 35 lines · 30 code · 4 blank · 1 comment · 0 complexity · 18cd1306c5f9d47b4e5369a6018d0365 MD5 · raw file

  1. # frozen_string_literal: true
  2. require 'spec_helper'
  3. module RailsBestPractices::Core
  4. describe Error do
  5. it 'returns error with filename, line number and message' do
  6. expect(
  7. described_class.new(
  8. filename: 'app/models/user.rb', line_number: '100', message: 'not good', type: 'BogusReview'
  9. ).to_s
  10. ).to eq('app/models/user.rb:100 - not good')
  11. end
  12. it 'returns short filename' do
  13. Runner.base_path = '../rails-bestpractices.com'
  14. expect(
  15. described_class.new(
  16. filename: '../rails-bestpractices.com/app/models/user.rb',
  17. line_number: '100',
  18. message: 'not good',
  19. type: 'BogusReview'
  20. ).short_filename
  21. ).to eq('app/models/user.rb')
  22. end
  23. it 'returns first line number' do
  24. expect(
  25. described_class.new(
  26. filename: 'app/models/user.rb', line_number: '50,70,100', message: 'not good', type: 'BogusReview'
  27. ).first_line_number
  28. ).to eq('50')
  29. end
  30. end
  31. end