Sha256: 36396fc4096b6ea69b3a983b5e73ee2750494fef612831d2836d8817b6d5649e

Contents?: true

Size: 907 Bytes

Versions: 10

Compression:

Stored size: 907 Bytes

Contents

# encoding: utf-8
require 'rails_best_practices/checks/check'

module RailsBestPractices
  module Checks
    # Check config/routes to make sure not use default route that rails generated.
    #
    # Implementation: compare route sentence to see if it is equal to rails default route.
    class NotUseDefaultRouteCheck < Check
      
      def interesting_nodes
        [:call]
      end
      
      def interesting_files
        /config\/routes.rb/
      end
      
      def evaluate_start(node)
        if node == s(:call, s(:lvar, :map), :connect, s(:arglist, s(:str, ":controller/:action/:id"))) or
           node == s(:call, s(:lvar, :map), :connect, s(:arglist, s(:str, ":controller/:action/:id.:format"))) or
           node == s(:call, nil, :match, s(:arglist, s(:str, ":controller(/:action(/:id(.:format)))")))
          add_error "not use default route"
        end
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
rails_best_practices-0.5.6 lib/rails_best_practices/checks/not_use_default_route_check.rb
rails_best_practices-0.5.5 lib/rails_best_practices/checks/not_use_default_route_check.rb
rails_best_practices-0.5.3 lib/rails_best_practices/checks/not_use_default_route_check.rb
rails_best_practices-0.5.2 lib/rails_best_practices/checks/not_use_default_route_check.rb
rails_best_practices-0.5.1 lib/rails_best_practices/checks/not_use_default_route_check.rb
rails_best_practices-0.5.0 lib/rails_best_practices/checks/not_use_default_route_check.rb
rails_best_practices-0.4.6 lib/rails_best_practices/checks/not_use_default_route_check.rb
rails_best_practices-0.4.5 lib/rails_best_practices/checks/not_use_default_route_check.rb
rails_best_practices-0.4.4 lib/rails_best_practices/checks/not_use_default_route_check.rb
rails_best_practices-0.4.3 lib/rails_best_practices/checks/not_use_default_route_check.rb