Advertisement
Guest User

Untitled

a guest
Jun 20th, 2016
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. require 'spec_helper'
  2. require_rel 'support'
  3.  
  4. def get_users(api_v2_client)
  5. users = @api_v2_client.fetch_all_objects('user')
  6. users.map do |user|
  7. user_from_config = Sulik.config.users.find {|u| u['user_id'] == user['data']['id']}
  8. user = {
  9. id: user['data']['id'],
  10. name: user['data']['name'],
  11. email: user['data']['email'],
  12. password: user_from_config['password'],
  13. token: user_from_config['token']
  14. }
  15. {"#{user[:name]}" => FactoryGirl.build(:user_v1, user)}
  16. end.reduce(Hash.new, :merge)
  17. end
  18.  
  19.  
  20. describe "Do the job" do
  21.  
  22. before(:all) do
  23. @api_v2_client = MrHandy::ApiRestClient.new(build(:user).api_token)
  24. root = {email: Sulik.config.email, password: Sulik.config.password, token: Sulik.config.token}
  25. @core_client = MrHandy::Client::CoreClient.new(build(:user_v1, root))
  26. end
  27.  
  28. it "Do the job" do
  29. users = get_users(@api_v2_client)
  30. count = 0
  31.  
  32. Parallel.map(users, in_threads: 4) do |username, user_data|
  33. unless user_data.id == Sulik.config.user_id #skip setting for root
  34. puts "Changing user #{user_data.id}, done #{count} out of #{users.size}"
  35. @core_client.update_user(user_id: user_data.id, data: {admin: true})
  36. @core_client.update_permissions(user_id: user_data.id, contacts: {read: 'propagate_parent'},
  37. leads: {read: 'propagate_parent'},
  38. sales_accounts: {read: 'propagate_parent'},
  39. deals: {read: 'propagate_parent'})
  40. count +=1
  41. end
  42. end
  43. end
  44. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement