Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- require 'spec_helper'
- require_rel 'support'
- def get_users(api_v2_client)
- users = @api_v2_client.fetch_all_objects('user')
- users.map do |user|
- user_from_config = Sulik.config.users.find {|u| u['user_id'] == user['data']['id']}
- user = {
- id: user['data']['id'],
- name: user['data']['name'],
- email: user['data']['email'],
- password: user_from_config['password'],
- token: user_from_config['token']
- }
- {"#{user[:name]}" => FactoryGirl.build(:user_v1, user)}
- end.reduce(Hash.new, :merge)
- end
- describe "Do the job" do
- before(:all) do
- @api_v2_client = MrHandy::ApiRestClient.new(build(:user).api_token)
- root = {email: Sulik.config.email, password: Sulik.config.password, token: Sulik.config.token}
- @core_client = MrHandy::Client::CoreClient.new(build(:user_v1, root))
- end
- it "Do the job" do
- users = get_users(@api_v2_client)
- count = 0
- Parallel.map(users, in_threads: 4) do |username, user_data|
- unless user_data.id == Sulik.config.user_id #skip setting for root
- puts "Changing user #{user_data.id}, done #{count} out of #{users.size}"
- @core_client.update_user(user_id: user_data.id, data: {admin: true})
- @core_client.update_permissions(user_id: user_data.id, contacts: {read: 'propagate_parent'},
- leads: {read: 'propagate_parent'},
- sales_accounts: {read: 'propagate_parent'},
- deals: {read: 'propagate_parent'})
- count +=1
- end
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement