Sha256: 8509ae0a691e3d7aec4544e482cd3d5a493010c6a7d386dd3cdfd975828a6c71

Contents?: true

Size: 1.03 KB

Versions: 1

Compression:

Stored size: 1.03 KB

Contents

class WelcomeController < ApplicationController
  def index
    render json: {}
  end

  def show
    render json: {keys: extract_keys, fakeKey: true, fake_key: false}
  end

  def ignore
    render json: {keys: extract_keys, camelCase: false, snake_case: true}
  end

  def posts
    render json: {keys: extract_keys}
  end

  def array_of_elements
    render json:  [
                    {fake_key: "foo"},
                    {fake_key: "bar"}
                  ]
  end

  def upcase_first_name
    name = params[:user_options][:first_name]
    params[:user_options][:first_name] = name.upcase

    render json: params
  end

  def error
    # lets cause a server error by doing something stupid here
    0 / 0
  end

  private
  def extract_keys
    not_acceptable_keys = %w(controller format default action welcome)
    params.reduce([]) do |result, (key, value)|
      unless key.in?(not_acceptable_keys)
        result << key
        if value.is_a?(Hash)
          result << value.keys
        end
      end
      result
    end.flatten
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
cp-sparrow-0.0.11 spec/integration/apps/rails_app/app/controllers/welcome_controller.rb