+ More tests for /neighbor routes
! put /neighbor/update is failing due to a failure to parse the body correctly on thebackend Further investigation is required + Kinda minor but I'm also adding the ability to `put` things now + Also an if statement to avoid failing on checkf for NoneType responses
This commit is contained in:
parent
b4c55b72ea
commit
664b837f13
@ -2,6 +2,7 @@ from time import time
|
||||
from request import Request
|
||||
from config import create_admin, Admin
|
||||
from config import Server
|
||||
from json import dumps as to_json
|
||||
|
||||
RESPONSES = []
|
||||
VOICE_CHAN = 1
|
||||
@ -73,7 +74,6 @@ def make_and_receive_invite(admin: Admin) -> (Request, Request):
|
||||
return (make_inv_req, None)
|
||||
|
||||
# Setup to fire the second request, .fire() is safe to blindly use at this point
|
||||
print('Response text from /join ', make_inv_req.response.status_code, ' ', make_inv_req.response.text)
|
||||
new_invite_body = make_inv_req.response.json()['invite']
|
||||
code = new_invite_body['id']
|
||||
user_inv_req = req(admin , 'get' , '/join', {'code': code}, 200, verbose=True)
|
||||
@ -108,6 +108,19 @@ if __name__ == '__main__':
|
||||
# Invite test
|
||||
|
||||
# Container for most/all the generic requests we want to fire off
|
||||
now = time()
|
||||
tmp_neighbor = {
|
||||
'name': str(now),
|
||||
'wsurl': 'wsurl',
|
||||
'url': str(now),
|
||||
'description': 'asdf',
|
||||
'tags': ['red','blue']
|
||||
}
|
||||
# This neighbor is used to "update" the tmp one above in /neighbor tests
|
||||
updated_neighbor = tmp_neighbor.copy()
|
||||
updated_neighbor['name'] = 'new'
|
||||
print('Updated neighbor as json ', to_json(updated_neighbor))
|
||||
|
||||
requests.extend([
|
||||
req(fake_user, 'get', '/channels/list', {}, 401),
|
||||
req(admin, 'post', '/channels/list', {'kind': TEXT_CHAN}, 404),
|
||||
@ -121,12 +134,14 @@ if __name__ == '__main__':
|
||||
req(admin, 'get', '/message/recent', {'channel_id': 123, 'limit': 20}, 404),
|
||||
req(admin, 'get', '/members/me', {}, 200),
|
||||
req(admin, 'get', '/members/get_online', {}, 200),
|
||||
req(admin, 'post', '/members/me/nickname', {'nick': f'randy-{time()}'}, 200),
|
||||
req(admin, 'post', '/members/me/nickname', {'nick': f'randy-{now}'}, 200),
|
||||
req(admin , 'get', '/invite/join', {'code': 123}, 404),
|
||||
req(admin , "get", "/meta", {}, 200),
|
||||
req(admin, 'get', '/neighbor/list', {}, 200),
|
||||
req(admin,'post', '/neighbor/add', {'name':'name','url':'url','wsurl':'wsurl','description':'asdf','tags':'["red","blue"]'}, 200),
|
||||
req(admin, 'get', '/neighbor/list', {}, 200, verbose=True)
|
||||
req(admin,'post', '/neighbor/add', {}, 200, body=to_json(tmp_neighbor)),
|
||||
req(admin, 'get', '/neighbor/list', {}, 200, verbose=True),
|
||||
req(admin, 'put', '/neighbor/update', {'url':str(now)}, 200, body=to_json(updated_neighbor)),
|
||||
req(admin, 'get', '/neighbor/list', {}, 200, verbose=True),
|
||||
])
|
||||
|
||||
# add this after fire the generic tests
|
||||
@ -150,6 +165,7 @@ if __name__ == '__main__':
|
||||
r.show_response()
|
||||
if r.passing:
|
||||
pass_count += 1
|
||||
|
||||
|
||||
req_count = len(requests)
|
||||
print(f'Passing {pass_count}/{req_count}')
|
||||
|
@ -40,6 +40,8 @@ class Request:
|
||||
self.response = requests.post(self.url, headers=self.headers, params=self.qs, data=self.body)
|
||||
elif self.method == 'delete':
|
||||
self.response = requests.delete(self.url, headers=self.headers, params=self.qs)
|
||||
elif self.method == 'put':
|
||||
self.response = requests.put(self.url, headers=self.headers, params=self.qs)
|
||||
|
||||
return self.response
|
||||
except Exception as e:
|
||||
@ -49,13 +51,15 @@ class Request:
|
||||
|
||||
|
||||
def show_response(self):
|
||||
if not self.passing:
|
||||
print(RED + 'Fail' + NC + ' ' + self.url)
|
||||
return
|
||||
|
||||
real_code = self.response.status_code
|
||||
real_code = None
|
||||
if self.response is not None:
|
||||
real_code = self.response.status_code
|
||||
|
||||
if self.hope != real_code:
|
||||
abstract = RED + 'Fail ' + NC + 'Expected ' + str(self.hope) + ' Got ' + str(real_code)
|
||||
if self.response is None:
|
||||
print('\tNo Response to show for')
|
||||
|
||||
print(abstract)
|
||||
print('\t', self.method, ' ', self.url)
|
||||
|
Loading…
Reference in New Issue
Block a user