61 lines
1.4 KiB
Python
61 lines
1.4 KiB
Python
from __future__ import print_function
|
|
import pprint
|
|
import datetime
|
|
import requests
|
|
import random
|
|
|
|
|
|
def call_generic(conn, endpoint):
|
|
print("%s \n" % endpoint)
|
|
url = conn + '/%s' % endpoint
|
|
resp = requests.get(url)
|
|
resp.raise_for_status()
|
|
res = resp.json()
|
|
assert res['err'] == 0
|
|
data = res['data']
|
|
print('%s \n' % endpoint)
|
|
pprint.pprint(data)
|
|
print('\n')
|
|
return data
|
|
|
|
|
|
def test_get_events(conn):
|
|
call_generic(conn, 'events')
|
|
|
|
|
|
def test_get_rooms(conn):
|
|
call_generic(conn, 'rooms')
|
|
|
|
|
|
def test_get_themes(conn):
|
|
call_generic(conn, 'themes')
|
|
|
|
|
|
def test_book_event(conn):
|
|
url = conn + '/book'
|
|
payload = {
|
|
'id': 'formid',
|
|
'email': 'foo@example.com',
|
|
'datetime': datetime.datetime.now().strftime('%Y-%m-%dT%H:%M'),
|
|
'room': '001',
|
|
'theme': 'A0001',
|
|
'quantity': 1,
|
|
}
|
|
events = call_generic(conn, 'events')
|
|
random.shuffle(events)
|
|
payload['event'] = events[0]['id']
|
|
rooms = call_generic(conn, 'rooms')
|
|
random.shuffle(rooms)
|
|
payload['room'] = rooms[0]['id']
|
|
themes = call_generic(conn, 'themes')
|
|
random.shuffle(themes)
|
|
payload['theme'] = themes[0]['id']
|
|
print("Creating booking with the following payload:\n%s" % payload)
|
|
resp = requests.post(url, json=payload)
|
|
resp.raise_for_status()
|
|
res = resp.json()
|
|
assert res['err'] == 0
|
|
data = res['data']
|
|
pprint.pprint(data)
|
|
print('\n')
|