def test_create_60_users(): headers = {'X-Auth-Token': ammo_factory.auth(username, password, tenant_name, host_ip), 'Content-Type': 'application/json'} users_count = 60 with open("tmp/create_user_ammo.txt", "w") as f: for x in xrange(users_count): body = json.dumps({ "user": { "email": "*****@*****.**", "enabled": True, "name": "load_test_%d" % x, "password": "******" } }) headers['Content-Length'] = len(body) req = ammo_factory.gen_request('post', '/v3/users', host_ip, headers, body) f.write(req) with open('tmp/load.ini', 'w') as f: f.write('[phantom]\n') f.write('address=%s\n' % host_ip) f.write('rps_schedule=const(3, 15s)\n') print "Generated %d requests" % users_count if users_count: print "Request example:" print req
def create_user_and_get_id(login, password, tenant_name, host_ip, user_json): auth_url = 'http://{ip}/v2.0'.format(ip=host_ip) v3_users = 'http://{ip}/v3/users'.format(ip=host_ip) headers = { 'X-Auth-Token': auth(login, password, tenant_name, auth_url), 'Content-Type': 'application/json'} r = requests.post(v3_users, data=user_json, headers=headers) return r.json()['user']['id']
def get_users_ids(login, password, tenant_name, host_ip): auth_url = 'http://{ip}/v2.0'.format(ip=host_ip) v3_users = 'http://{ip}/v3/users'.format(ip=host_ip) headers = { 'X-Auth-Token': auth(login, password, tenant_name, auth_url), 'Content-Type': 'application/json'} r = requests.get(v3_users, headers=headers) return {user['name']: user['id'] for user in r.json()['users']}
def test_get_user_list(self): headers = dict() headers['X-Auth-Token'] = auth(self.username, self.password, self.tenant_name, self.host) headers['Content-Type'] = 'application/json' req = gen_request('get', '/v3/users', self.host, headers, body=None) with open("../tmp/get_user_list_ammo.txt", "w") as f: for x in xrange(60): f.write(req) self.assertIsInstance(req, str)
def test_delete_already_created_users(self): ids = self.get_users_ids(self.username, self.password, self.tenant_name, self.host) fetched_ids = [temp_id for (user, temp_id) in ids.items() if 'load_test_' in user] headers = dict() headers['X-Auth-Token'] = auth(self.username, self.password, self.tenant_name, self.host) headers['Content-Type'] = 'application/json' with open("../tmp/delete_existing_users.txt", "w") as f: for i in fetched_ids: req = gen_request('delete', '/v3/users/%s' % i, self.host, headers) f.write(req)
def test_create_60_users(self): headers = dict() headers['X-Auth-Token'] = auth(self.username, self.password, self.tenant_name, self.host) headers['Content-Type'] = 'application/json' with open("../tmp/create_user_ammo.txt", "w") as f: for x in xrange(60): body = json.dumps({ "user": { "email": "*****@*****.**", "enabled": True, "name": "load_test_%d" % x, "password": "******" } }) headers['Content-Length'] = len(body) req = gen_request('post', '/v3/users', self.host, headers, body) f.write(req)
def test_delete_existing_users(): all_id = get_users_ids(username, password, tenant_name, host_ip) needed_id = [temp_id for (user, temp_id) in all_id.items() if 'load_test_' in user] headers = {'X-Auth-Token': ammo_factory.auth(username, password, tenant_name, host_ip), 'Content-Type': 'application/json'} with open("delete_existing_users.txt", "w") as f: for i in needed_id: req = ammo_factory.gen_request('delete', '/v3/users/%s' % i, host_ip, headers) f.write(req) with open('load.ini', 'w') as f: f.write('[phantom]\n') f.write('address=%s\n' % host_ip) f.write('rps_schedule=const(12, 5s)\n') req_count = len(needed_id) print "Generated %d requests" % req_count if req_count: print "Request example:" print req
def test_auth(self): token = auth(self.username, self.password, self.tenant_name, self.host) print token self.assertIsInstance(token, unicode) self.assertEqual(len(token), 32)