class Fastly::User

A representation of a User in Fastly

def can_do?(test_role)

Does this User have sufficient permissions to perform the given role
def can_do?(test_role)
  test_priority = PRIORITIES[test_role.to_sym] || 1000
  my_priority = PRIORITIES[role.to_sym] || 1000
  if test_priority == my_priority
    test_role.to_s == :owner ? owner? : test_role.to_sym == role.to_sym
  else
    my_priority < test_priority
  end
end

def customer

Get the Customer object this user belongs to
def customer
  @customer ||= fetcher.get(Customer, customer_id)
end

def owner?

Whether or not this User is the owner of the Customer they belong to
def owner?
  customer.owner_id == id
end