Sha256: 51e373db5075032425afb4cf1bfaf174555a0eb700bd574c28f5e3bd3f9e7d37

Contents?: true

Size: 596 Bytes

Versions: 3

Compression:

Stored size: 596 Bytes

Contents

module Praxis
  module RequestStages

    class Response < RequestStage

      def execute
        response = controller.response

        unless action.responses.include?(response.response_name)
          raise Exceptions::InvalidResponse.new(
            "Response #{response.name.inspect} is not allowed for #{action.name.inspect}"
          )
        end

        response.handle

        praxis_config = Application.instance.config.praxis
        unless praxis_config && praxis_config.validate_responses == false
          response.validate(action)
        end
      end

    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
praxis-0.10.1 lib/praxis/request_stages/response.rb
praxis-0.10.0 lib/praxis/request_stages/response.rb
praxis-0.9 lib/praxis/request_stages/response.rb