def step_impl(context, verb): book_uuid = context.book_entity['id'] genre_uuid = context.genre_entity['id'] book_genre_entity = generate_example_book_genre( book_uuid=book_uuid, genre_uuid=genre_uuid, ) context.book_genre_uuid = book_genre_uuid = book_genre_entity['id'] if verb.lower() == 'put': response = make_request(client=context.client, endpoint=f'book-genre/{book_genre_uuid}', method=verb, data=book_genre_entity) elif verb.lower() == 'post': response = make_request(client=context.client, endpoint=f'book-genre', method=verb, data=book_genre_entity) assert_that(response.status_code, equal_to(201))
def step_impl(context, author_name, relationship): related_author = generate_example_author() setattr(context, author_name, related_author) response = make_request( client=context.client, endpoint=f'author/{related_author["id"]}', method='put', data=related_author) assert_that(response.status_code, equal_to(201)) context.author_entity[relationship] = related_author['id'] author = context.author_entity response = make_request( client=context.client, endpoint=f'author/{author["id"]}', method='put', data=author) assert_that(response.status_code, equal_to(201))
def step_impl(context, url: str): url = url.replace('{id}', context.book_entity['id']) response = make_request(client=context.client, endpoint=url, method='get') assert_that(response.status_code, equal_to(200)) data = json.loads(response.data) author = data["author"] assert_that(author["books"][0]["id"], equal_to(context.book_entity["id"]))
def step_impl(context, entity_type: str, parameters: str): context.response = make_request( client=context.client, endpoint=entity_type, method='get', parameters=parameters, )
def step_impl(context, url: str): url = url.replace('{id}', context.book_entity['id']) response = make_request(client=context.client, endpoint=url, method='get') assert_that(response.status_code, equal_to(200)) data = json.loads(response.data) genre = data['genre'] assert_that(genre['id'], equal_to(context.genre_entity['id']))
def step_impl(context): book = context.book_entity url = f'/book/{book["id"]}' response = make_request(client=context.client, endpoint=url, method='get') assert_that(response.status_code, equal_to(200)) data = json.loads(response.data) context.retrieved_book = data
def step_impl(context, entity_name, prop, value): existing_entity = getattr(context, f'{entity_name}_entity') response = make_request(client=context.client, endpoint=f'{entity_name}/{existing_entity["id"]}', method='get') assert_that(response.status_code, equal_to(200)) data = response.json assert_that(data[prop], equal_to(value))
def step_impl(context): book_genre_entity = generate_example_book_genre( book_uuid=str(uuid.uuid4()), genre_uuid=str(uuid.uuid4()), ) context.book_genre_uuid = book_genre_uuid = book_genre_entity['id'] response = make_request(client=context.client, endpoint=f'book-genre/{book_genre_uuid}', method='put', data=book_genre_entity) context.response = response
def step_impl(context, entity_name, prop, value): existing_entity_id = getattr(context, f'{entity_name}_entity')['id'] data = {prop: value} response = make_request(client=context.client, endpoint=f'{entity_name}/{existing_entity_id}', method='patch', data=data) assert_that(response.status_code, equal_to(200))
def step_impl(context, operations_list: str, endpoint: str, status: int): for operation in operations_list.split(','): response = make_request( client=context.client, endpoint=endpoint, method=operation, ) assert_that(response.status_code, equal_to(int(status)), f'{operation}')
def step_impl(context): context.book_entity['collaboratorId'] = context.author_entity['id'] book = context.book_entity response = make_request(client=context.client, endpoint=f'book/{book["id"]}', method='put', data=book) assert_that(response.status_code, equal_to(201))
def step_impl(context, entity_name: str, entity_id: str): patch_id = getattr(context, f'{entity_id}_entity')['id'] existing_entity_id = getattr(context, f'{entity_name}_entity')['id'] data = { f"{entity_id}Id": patch_id, } response = make_request(client=context.client, endpoint=f'{entity_name}/{existing_entity_id}', method='patch', data=data) assert_that(response.status_code, equal_to(200))
def step_impl(context): book = generate_example_book() context.book_entity = book = { **book, **{'authorId': context.author_entity['id']} } response = make_request(client=context.client, endpoint=f'book/{book["id"]}', method='put', data=book) assert_that(response.status_code, equal_to(201))
def step_impl(context, url: str): url = url.replace('{id}', context.author_entity['id']) response = make_request(client=context.client, endpoint=url, method='get') assert_that(response.status_code, equal_to(200)) data = response.json existing_book = getattr(context, 'book_entity') for book in data['books']: if existing_book['id'] == book['id']: return raise Exception(f'Book with id {existing_book["id"]} not found')
def _put_entity(context, entity_type: str, entity_name: str, extras: Mapping[str, str]): entity = example_entity_generators[entity_type]() entity_id = entity['id'] entity.update(extras) setattr(context, entity_name, entity) response = make_request( client=context.client, endpoint=f'{entity_type}/{entity_id}', method='put', data=entity, ) assert_that(response.status_code, equal_to(201))
def step_impl(context: Any, method: str, path: str, parameters: str): context.response = make_request(context.client, path, method, parameters)
def _i_can_get_entity(context, path: str): context.response = response = make_request(context.client, path, 'get') assert_that(response.status_code, equal_to(200))
def step_impl(context, path: str): assert_that( make_request(context.client, path, 'get').status_code, equal_to(404))
def step_impl(context, method: str, path: str): context.response = make_request(context.client, path, method)
def step_impl(context: Any, method: str, path: str): data = context.data context.response = make_request(context.client, path, method, data=data)