class Draper::ViewContext::BuildStrategy::Full

def call

def call
  controller.view_context.tap do |context|
    context.singleton_class.class_eval(&block) if block
  end
end

def controller

def controller
  Draper::ViewContext.controller ||= Draper.default_controller.new
  Draper::ViewContext.controller.tap do |controller|
    controller.request ||= ActionDispatch::TestRequest.create
  end
end

def initialize(&block)

def initialize(&block)
  @block = block
end