Sha256: 253096d24ea84c7ad81107f2504c06601bcce151b4ac5ae6e63ae58aa6fe71fe
Contents?: true
Size: 1.2 KB
Versions: 9
Compression:
Stored size: 1.2 KB
Contents
class Zendesk2::Client class Real def update_organization(params={}) id = params.delete("id") request( :method => :put, :path => "/organizations/#{id}.json", :body => { "organization" => params }, ) end end class Mock def update_organization(_params={}) params = Cistern::Hash.stringify_keys(_params) id = params.delete("id") organization = self.find!(:organizations, id) other_organizations = self.data[:organizations].dup other_organizations.delete(id.to_s) if other_organizations.values.find { |o| o["name"] == params["name"] } error!(:invalid, details: {"name" => [ { "description" => "Name: has already been taken" } ]}) end if params["external_id"] && other_organizations.values.find { |o| o["external_id"] == params["external_id"] } error!(:invalid, details: {"name" => [ { "description" => "External has already been taken" } ]}) end body = organization.merge!(params) response( :method => :put, :path => "/organizations/#{id}.json", :body => { "organization" => body }, ) end end end
Version data entries
9 entries across 9 versions & 1 rubygems