Sha256: 6ff12c4848d1cb2e40e983988ca7c22f4f4860a42a3d9a4e4bf668bd46d12d49

Contents?: true

Size: 1001 Bytes

Versions: 11

Compression:

Stored size: 1001 Bytes

Contents

require 'active_support/all'

module ControllerHacks
  extend ActiveSupport::Concern

  included do
    routes { Spree::Core::Engine.routes }
  end

  def api_get(action, params = {}, session = nil, flash = nil)
    api_process(action, params, session, flash, "GET")
  end

  def api_post(action, params = {}, session = nil, flash = nil)
    api_process(action, params, session, flash, "POST")
  end

  def api_put(action, params = {}, session = nil, flash = nil)
    api_process(action, params, session, flash, "PUT")
  end

  def api_delete(action, params = {}, session = nil, flash = nil)
    api_process(action, params, session, flash, "DELETE")
  end

  def api_process(action, params = {}, session = nil, flash = nil, method = "get")
    scoping = respond_to?(:resource_scoping) ? resource_scoping : {}
    process(action, method, params.merge(scoping).reverse_merge!(format: :json), session, flash)
  end
end

RSpec.configure do |config|
  config.include ControllerHacks, type: :controller
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
solidus_api-1.4.2 spec/support/controller_hacks.rb
solidus_api-1.3.2 spec/support/controller_hacks.rb
solidus_api-1.4.1 spec/support/controller_hacks.rb
solidus_api-1.4.0 spec/support/controller_hacks.rb
solidus_api-1.4.0.rc1 spec/support/controller_hacks.rb
solidus_api-1.4.0.beta1 spec/support/controller_hacks.rb
solidus_api-1.3.1 spec/support/controller_hacks.rb
solidus_api-1.3.0 spec/support/controller_hacks.rb
solidus_api-1.3.0.rc2 spec/support/controller_hacks.rb
solidus_api-1.3.0.rc1 spec/support/controller_hacks.rb
solidus_api-1.3.0.beta1 spec/support/controller_hacks.rb