module ShouldaMatchmakers::Controller::ActionController::ActionControllerControllerSmModelHelper

Public Instance Methods

append_element(element, element_set) click to toggle source
# File lib/controller/action_controller/action_controller_controller_sm_model_helper.rb, line 35
def append_element(element, element_set)
  if element.present?
    element_set << element
  end
  element_set
end
compose_extended_app_controller_file_path(app_controller_name) click to toggle source
# File lib/controller/action_controller/action_controller_controller_sm_model_helper.rb, line 6
def compose_extended_app_controller_file_path(app_controller_name)
  # Rails.root.join("app", "controllers").to_s + "/" + get_controller_file_path(controller).concat(".rb")
  Rails.root.join("app", "controllers").to_s + "/" + app_controller_name.to_s.underscore.concat(".rb")
end
compose_route_controller(app_controller_name) click to toggle source
# File lib/controller/action_controller/action_controller_controller_sm_model_helper.rb, line 23
def compose_route_controller(app_controller_name)
  app_controller_name.underscore.sub(/_controller$/, "")
end
containing_method_is_action(app_controller_name, app_controller_action_candidate) click to toggle source
# File lib/controller/action_controller/action_controller_controller_sm_model_helper.rb, line 31
def containing_method_is_action(app_controller_name, app_controller_action_candidate)
  app_controller_name.constantize.instance_methods(false).include?(app_controller_action_candidate.to_sym)
end
format_tests(tests) click to toggle source
# File lib/controller/action_controller/action_controller_controller_sm_model_helper.rb, line 42
def format_tests(tests)
  formatted_tests = properly_line_space_tests(tests)
  formatted_tests.flatten.compact.uniq.join("\n")
end
get_app_controller_file_path(app_controller_name) click to toggle source
# File lib/controller/action_controller/action_controller_controller_sm_model_helper.rb, line 11
def get_app_controller_file_path(app_controller_name)
  app_controller_name.constantize.controller_path
end
get_app_controller_routes_by_action(app_controller_name, app_controller_action) click to toggle source
# File lib/controller/action_controller/action_controller_controller_sm_model_helper.rb, line 15
def get_app_controller_routes_by_action(app_controller_name, app_controller_action)
  Rails.application.routes.set.select { |route| route.defaults[:controller] == app_controller_name && route.defaults[:action] == app_controller_action }
end
get_app_controller_routes_by_path(app_controller_path) click to toggle source
# File lib/controller/action_controller/action_controller_controller_sm_model_helper.rb, line 19
def get_app_controller_routes_by_path(app_controller_path)
  Rails.application.routes.set.select { |route| route.name == app_controller_path.to_s.chomp("_path") }
end
get_route_http_method(route) click to toggle source
# File lib/controller/action_controller/action_controller_controller_sm_model_helper.rb, line 27
def get_route_http_method(route)
  route.constraints[:request_method].to_s.gsub("(?-mix:^","").gsub("$)","")
end
properly_line_space_tests(tests) click to toggle source
# File lib/controller/action_controller/action_controller_controller_sm_model_helper.rb, line 47
def properly_line_space_tests(tests)
  tests_properly_line_spaced = []
  previous_test = ""
  tests.each do |test|
    if (test.include?("\n") && previous_test.present?) ||
         (!test.include?("\n") && previous_test.include?("\n"))
      test_properly_line_spaced = "\n" + test
    else
      test_properly_line_spaced = test
    end
    tests_properly_line_spaced << test_properly_line_spaced
    previous_test = test
  end
  tests_properly_line_spaced
end