module Viu::TestHelpers

Attributes

raw_rendered_view[R]
rendered_view[R]
view_instance[R]

Private Instance Methods

__constantize(value) click to toggle source
# File lib/viu/test_helpers.rb, line 35
def __constantize(value)
  return value if value.is_a?(Class)

  ActiveSupport::Inflector.constantize(value)
end
__controller() click to toggle source
# File lib/viu/test_helpers.rb, line 23
def __controller
  @__controller ||= __constantize(self.class.__controller_class).new.tap do |c|
    c.request = request
    c.action_name = 'show'
  end
    .extend(Rails.application.routes.url_helpers)
end
controller_class(klass) click to toggle source
# File lib/viu/test_helpers.rb, line 48
def controller_class(klass)
  self.__controller_class = klass
end
render_view(view, **args) click to toggle source
# File lib/viu/test_helpers.rb, line 15
def render_view(view, **args)
  @rendered ||= []
  @view_instance = view
  @raw_rendered_view = @view_instance.render_in(__controller.view_context, **args)
  @rendered << @raw_rendered_view
  @rendered_view = Nokogiri::HTML::Document.parse(@raw_rendered_view)
end
request() click to toggle source
# File lib/viu/test_helpers.rb, line 31
def request
  @request ||= ActionDispatch::TestRequest.create
end