+ 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 request import Request
|
||||||
from config import create_admin, Admin
|
from config import create_admin, Admin
|
||||||
from config import Server
|
from config import Server
|
||||||
|
from json import dumps as to_json
|
||||||
|
|
||||||
RESPONSES = []
|
RESPONSES = []
|
||||||
VOICE_CHAN = 1
|
VOICE_CHAN = 1
|
||||||
@ -73,7 +74,6 @@ def make_and_receive_invite(admin: Admin) -> (Request, Request):
|
|||||||
return (make_inv_req, None)
|
return (make_inv_req, None)
|
||||||
|
|
||||||
# Setup to fire the second request, .fire() is safe to blindly use at this point
|
# 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']
|
new_invite_body = make_inv_req.response.json()['invite']
|
||||||
code = new_invite_body['id']
|
code = new_invite_body['id']
|
||||||
user_inv_req = req(admin , 'get' , '/join', {'code': code}, 200, verbose=True)
|
user_inv_req = req(admin , 'get' , '/join', {'code': code}, 200, verbose=True)
|
||||||
@ -108,6 +108,19 @@ if __name__ == '__main__':
|
|||||||
# Invite test
|
# Invite test
|
||||||
|
|
||||||
# Container for most/all the generic requests we want to fire off
|
# 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([
|
requests.extend([
|
||||||
req(fake_user, 'get', '/channels/list', {}, 401),
|
req(fake_user, 'get', '/channels/list', {}, 401),
|
||||||
req(admin, 'post', '/channels/list', {'kind': TEXT_CHAN}, 404),
|
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', '/message/recent', {'channel_id': 123, 'limit': 20}, 404),
|
||||||
req(admin, 'get', '/members/me', {}, 200),
|
req(admin, 'get', '/members/me', {}, 200),
|
||||||
req(admin, 'get', '/members/get_online', {}, 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', '/invite/join', {'code': 123}, 404),
|
||||||
req(admin , "get", "/meta", {}, 200),
|
req(admin , "get", "/meta", {}, 200),
|
||||||
req(admin, 'get', '/neighbor/list', {}, 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,'post', '/neighbor/add', {}, 200, body=to_json(tmp_neighbor)),
|
||||||
req(admin, 'get', '/neighbor/list', {}, 200, verbose=True)
|
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
|
# add this after fire the generic tests
|
||||||
@ -151,6 +166,7 @@ if __name__ == '__main__':
|
|||||||
if r.passing:
|
if r.passing:
|
||||||
pass_count += 1
|
pass_count += 1
|
||||||
|
|
||||||
|
|
||||||
req_count = len(requests)
|
req_count = len(requests)
|
||||||
print(f'Passing {pass_count}/{req_count}')
|
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)
|
self.response = requests.post(self.url, headers=self.headers, params=self.qs, data=self.body)
|
||||||
elif self.method == 'delete':
|
elif self.method == 'delete':
|
||||||
self.response = requests.delete(self.url, headers=self.headers, params=self.qs)
|
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
|
return self.response
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@ -49,13 +51,15 @@ class Request:
|
|||||||
|
|
||||||
|
|
||||||
def show_response(self):
|
def show_response(self):
|
||||||
if not self.passing:
|
|
||||||
print(RED + 'Fail' + NC + ' ' + self.url)
|
|
||||||
return
|
|
||||||
|
|
||||||
|
real_code = None
|
||||||
|
if self.response is not None:
|
||||||
real_code = self.response.status_code
|
real_code = self.response.status_code
|
||||||
|
|
||||||
if self.hope != real_code:
|
if self.hope != real_code:
|
||||||
abstract = RED + 'Fail ' + NC + 'Expected ' + str(self.hope) + ' Got ' + str(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(abstract)
|
||||||
print('\t', self.method, ' ', self.url)
|
print('\t', self.method, ' ', self.url)
|
||||||
|
Loading…
Reference in New Issue
Block a user