Class: Zendesk2::DestroyMembership

Inherits:
Object
  • Object
show all
Includes:
Request
Defined in:
lib/zendesk2/destroy_membership.rb

Instance Attribute Summary

Attributes included from Request

#params

Instance Method Summary collapse

Methods included from Request

#call, cistern_included, #data, #delete!, #error!, #find!, #html_url_for, included, #mock_response, #page, #page_params!, #page_params?, #pluralize, #real, #real_request, #request_body, #request_params, #request_path, #resources, #response, #timestamp, #url_for

Instance Method Details

#membership_idObject



8
9
10
# File 'lib/zendesk2/destroy_membership.rb', line 8

def membership_id
  params.fetch('membership').fetch('id').to_i
end

#mockObject



12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/zendesk2/destroy_membership.rb', line 12

def mock
  membership = delete!(:memberships, membership_id)

  primary_organization = data[:memberships].values.find do |m|
    m['user_id'] == membership['user_id'] && m['default']
  end || data[:memberships].values.find { |m| m['user_id'] == membership['user_id'] }

  if primary_organization
    primary_organization['default'] = true
    find!(:users, membership['user_id'].to_i)['organization_id'] = primary_organization['organization_id']
  end

  mock_response(nil)
end