Sha256: ddd02dcc8eba178bfb5cb9f50550474081e5293b916b9b427e4b792add399268

Contents?: true

Size: 1.98 KB

Versions: 1

Compression:

Stored size: 1.98 KB

Contents

class Dalia::Api::SurveyPlatform::MockClient < Dalia::Api::SurveyPlatform::Client
  def initialize(opts = {})
    opts = {
      :account_id => "ACCOUNT_ID"
    }.merge(opts)

    super(opts)

    log.debug "Initialize MockClient"
  end

  def make_request_fetch_surveys(query)
    log.debug "make_request_fetch_surveys FAKE"
    response("fetch_surveys.json")
  end

  def make_request_fetch_survey(query)
    log.debug "make_request_fetch_survey FAKE"
    response("fetch_survey.json")
  end

  def make_request_send_survey(query)
    log.debug "make_request_send_survey FAKE"
    response("send_survey.json")
  end

  def make_request_update_survey(query)
    log.debug "make_request_update_survey FAKE"
    response("update_survey.json")
  end

  def make_request_fetch_completions(query)
    log.debug "make_request_fetch_completions FAKE"
    response("fetch_completions.json")
  end

  def make_request_fetch_completions_csv(query)
    log.debug "make_request_fetch_completions_csv FAKE"
    response("fetch_completions.csv")
  end

  def make_request_fetch_completion(query)
    log.debug "make_request_fetch_completion FAKE"
    response("fetch_completion.json")
  end

  def make_request_fetch_survey_price(query)
    log.debug "make_request_fetch_survey_price FAKE"
    response("fetch_survey_price.json")
  end

  def make_request_create_query(query)
    log.debug "make_request_create_query FAKE"
    response("create_query.json")
  end

private

  def response(file_response)
    response =
      RecursiveOpenStruct.new(
        :body => File.read("#{File.dirname(__FILE__)}/../../etc/fake_responses/#{file_response}"),
        :code => 200,
        :content_type => file_response.match(/\.json$/) ? "application/json" : "text/csv",
        :message => "<message>",
        :request => {
          :last_url => "<last_url>"
        }
      )

    log.log_response response

    if response.content_type == "application/json"
      JSON.parse_sym(response.body)
    else
      response.body
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
dalia_api_survey_platform-0.0.9 lib/dalia_api_survey_platform/mock_client.rb