Best Python code snippet using localstack_python
test_pet_friends.py
Source:test_pet_friends.py
...11# ÑикÑÑÑÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑаÑпологаÑÑ ÐºÐ°Ðº в Ñамом Ñайле Ñ ÑеÑÑами,12# Ñак и в Ñайле conftest.py(ÑаÑположение - коÑневой каÑалог,13# импоÑÑиÑÑÑÑÑÑ, как и ÑÑнкÑии ÑеÑез from conftest import 'Ð¸Ð¼Ñ ÑикÑÑÑÑÑ')14# @pytest.fixture()15# def get_api_key(email=valid_email, password=valid_password):16# """ ÐÑовеÑÑем ÑÑо запÑÐ¾Ñ api клÑÑа возвÑаÑÐ°ÐµÑ ÑÑаÑÑÑ 200 и в17# ÑезÑлÑÑаÑе ÑодеÑжиÑÑÑ Ñлово key"""18# # ÐÑпÑавлÑем запÑÐ¾Ñ Ð¸ ÑоÑ
ÑанÑем полÑÑеннÑй оÑÐ²ÐµÑ Ñ ÐºÐ¾Ð´Ð¾Ð¼ ÑÑаÑÑÑа в status, а ÑекÑÑ Ð¾ÑвеÑа в result19# status, result = pf.get_api_key(email, password)20#21# # СвеÑÑем полÑÑеннÑе даннÑе Ñ Ð½Ð°Ñими ожиданиÑми22# assert status == 20023# assert 'key' in result24# return result2526# ТеÑÑ Ñ Ð°Ð²ÑоÑизаÑией ÑеÑез ÑикÑÑÑÑÑ27def test_get_all_pets_with_valid_key(get_api_key, filter=''):28 """ ÐÑовеÑÑем ÑÑо запÑÐ¾Ñ Ð²ÑеÑ
пиÑомÑев возвÑаÑÐ°ÐµÑ Ð½Ðµ пÑÑÑой ÑпиÑок.29 ÐÐ»Ñ ÑÑого ÑнаÑала полÑÑаем api клÑÑ Ð¸ ÑоÑ
ÑанÑем в пеÑеменнÑÑ auth_key.30 Ðалее иÑполÑзÑÑ ÑÑого клÑÑ Ð·Ð°Ð¿ÑаÑиваем ÑпиÑок вÑеÑ
пиÑомÑев и пÑовеÑÑем31 ÑÑо ÑпиÑок не пÑÑÑой. ÐоÑÑÑпное знаÑение паÑамеÑÑа filter - 'my_pets' либо '' """3233 #_, auth_key = pf.get_api_key(valid_email, valid_password)34 status, result = pf.get_list_of_pets(get_api_key, filter)3536 assert status == 20037 assert len(result['pets']) > 0383940# ТеÑÑ Ñ Ð°Ð²ÑоÑизаÑией ÑеÑез ÑикÑÑÑÑÑ41def test_add_new_pet_with_valid_data(get_api_key, name='коÑÑ', animal_type='коÑ',42 age='44', pet_photo='images/cat1.jpg'):43 """ÐÑовеÑÑем ÑÑо можно добавиÑÑ Ð¿Ð¸ÑомÑа Ñ ÐºÐ¾ÑÑекÑнÑми даннÑми"""4445 # ÐолÑÑаем полнÑй пÑÑÑ Ð¸Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¸ÑомÑа и ÑоÑ
ÑанÑем в пеÑеменнÑÑ pet_photo46 pet_photo = os.path.join(os.path.dirname(__file__), pet_photo)4748 # ÐапÑаÑиваем клÑÑ api и ÑоÑ
ÑанÑем в пеÑеменÑÑ auth_key49 #_, auth_key = pf.get_api_key(valid_email, valid_password)5051 # ÐобавлÑем пиÑомÑа52 status, result = pf.add_new_pet(get_api_key, name, animal_type, age, pet_photo)5354 # СвеÑÑем полÑÑеннÑй оÑÐ²ÐµÑ Ñ Ð¾Ð¶Ð¸Ð´Ð°ÐµÐ¼Ñм ÑезÑлÑÑаÑом55 assert status == 20056 assert result['name'] == name, result['animal_type'] == animal_type and result['age'] == age575859# ТеÑÑ Ñ Ð°Ð²ÑоÑизаÑией ÑеÑез ÑикÑÑÑÑÑ60def test_successful_delete_self_pet(get_api_key):61 """ÐÑовеÑÑем возможноÑÑÑ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¸ÑомÑа"""6263 # ÐолÑÑаем клÑÑ auth_key и запÑаÑиваем ÑпиÑок ÑвоиÑ
пиÑомÑев64 #_, auth_key = pf.get_api_key(valid_email, valid_password)65 _, my_pets = pf.get_list_of_pets(get_api_key, "my_pets")6667 # ÐÑовеÑÑем - еÑли ÑпиÑок ÑвоиÑ
пиÑомÑев пÑÑÑой, Ñо добавлÑем нового и опÑÑÑ Ð·Ð°Ð¿ÑаÑиваем ÑпиÑок ÑвоиÑ
пиÑомÑев68 if len(my_pets['pets']) == 0:69 pf.add_new_pet(get_api_key, "СÑпеÑкоÑ", "коÑ", "3", "images/cat1.jpg")70 _, my_pets = pf.get_list_of_pets(get_api_key, "my_pets")7172 # ÐеÑÑм id пеÑвого пиÑомÑа из ÑпиÑка и оÑпÑавлÑем запÑÐ¾Ñ Ð½Ð° Ñдаление73 pet_id = my_pets['pets'][0]['id']74 status, _ = pf.delete_pet(get_api_key, pet_id)7576 # ÐÑÑ Ñаз запÑаÑиваем ÑпиÑок ÑвоиÑ
пиÑомÑев77 _, my_pets = pf.get_list_of_pets(get_api_key, "my_pets")7879 # ÐÑовеÑÑем ÑÑо ÑÑаÑÑÑ Ð¾ÑвеÑа Ñавен 200 и в ÑпиÑке пиÑомÑев Ð½ÐµÑ id ÑдалÑнного пиÑомÑа80 assert status == 20081 assert pet_id not in my_pets.values()8283# ТеÑÑ Ñ Ð°Ð²ÑоÑизаÑией ÑеÑез ÑикÑÑÑÑÑ84def test_successful_update_self_pet_info(get_api_key, name='ÐÑÑзик', animal_type='ÐоÑÑ', age=5):85 """ÐÑовеÑÑем возможноÑÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸Ð½ÑоÑмаÑии о пиÑомÑе"""8687 # ÐолÑÑаем клÑÑ auth_key и ÑпиÑок ÑвоиÑ
пиÑомÑев88 #_, auth_key = pf.get_api_key(valid_email, valid_password)89 _, my_pets = pf.get_list_of_pets(get_api_key, "my_pets")9091 # ÐÑлди ÑпиÑок не пÑÑÑой, Ñо пÑобÑем обновиÑÑ ÐµÐ³Ð¾ имÑ, Ñип и возÑаÑÑ92 if len(my_pets['pets']) > 0:93 status, result = pf.update_pet_info(get_api_key, my_pets['pets'][0]['id'], name, animal_type, age)9495 # ÐÑовеÑÑем ÑÑо ÑÑаÑÑÑ Ð¾ÑвеÑа = 200 и Ð¸Ð¼Ñ Ð¿Ð¸ÑомÑа ÑооÑвеÑÑÑвÑÐµÑ Ð·Ð°Ð´Ð°Ð½Ð½Ð¾Ð¼Ñ96 assert status == 20097 assert result['name'] == name98 else:99 # еÑли Ñпиок пиÑомÑев пÑÑÑой, Ñо вÑкидÑваем иÑклÑÑение Ñ ÑекÑÑом об оÑÑÑÑÑÑвии ÑвоиÑ
пиÑомÑев100 raise Exception("There is no my pets. ÐиÑомÑÑ Ð¾ÑÑÑÑÑÑвÑÑÑ")101102103# # # ***************** ÐÑÑ 10 ваÑианÑов ÑеÑÑ-кейÑов Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ REST API инÑеÑÑейÑа *******************104# # # *****************105106# 1 # ТеÑÑ Ñ Ð°Ð²ÑоÑизаÑией ÑеÑез ÑикÑÑÑÑÑ107def test_add_new_pet_with_long_name(get_api_key, name='ааааааа ббббббббббббб ввввввввввввв ггггггггггг дддддддддддд еееееееееее жжжжжжжжжжжжжжжжжж',108 animal_type='ÑÑинкÑ',109 age='1', pet_photo='images/cat1.jpg'):110 """ÐÑовеÑÑем, ÑÑо нелÑÐ·Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸ÑÑ Ð¿Ð¸ÑомÑа Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ длиннее 50 Ñимволов"""111112 # ÐолÑÑаем полнÑй пÑÑÑ Ð¸Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¸ÑомÑа и ÑоÑ
ÑанÑем в пеÑеменнÑÑ pet_photo113 pet_photo = os.path.join(os.path.dirname(__file__), pet_photo)114115 # ÐапÑаÑиваем клÑÑ api и ÑоÑ
ÑанÑем в пеÑеменÑÑ auth_key116 #_, auth_key = pf.get_api_key(valid_email, valid_password)117118 # ÐобавлÑем пиÑомÑа119 status, result = pf.add_new_pet(get_api_key, name, animal_type, age, pet_photo)120121 # СвеÑÑем полÑÑеннÑй оÑÐ²ÐµÑ Ñ Ð¾Ð¶Ð¸Ð´Ð°ÐµÐ¼Ñм ÑезÑлÑÑаÑом122 assert status == 200123 print('Ðаг - ÑÐ°Ð¹Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÐµÑ Ð´Ð¾Ð±Ð°Ð²Ð¸ÑÑ Ð¿Ð¸ÑомÑа Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ длиннее 50 Ñимволов')124125# 2 # ТеÑÑ Ñ Ð°Ð²ÑоÑизаÑией ÑеÑез ÑикÑÑÑÑÑ126def test_add_new_pet_with_empty_name(get_api_key, name='', animal_type='коÑ', age='44', pet_photo='images/cat1.jpg'):127 '''ÐÑовеÑÑем возможноÑÑÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¸ÑомÑа Ñ Ð¿ÑÑÑÑм знаÑением name128 ÐиÑÐ¾Ð¼ÐµÑ Ð±ÑÐ´ÐµÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½ на ÑÐ°Ð¹Ñ Ñ Ð¿ÑÑÑÑм знаÑением в поле "имÑ"'''129130 # ÐолÑÑаем полнÑй пÑÑÑ Ð¸Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¸ÑомÑа и ÑоÑ
ÑанÑем в пеÑеменнÑÑ pet_photo131 pet_photo = os.path.join(os.path.dirname(__file__), pet_photo)132133 # ÐапÑаÑиваем клÑÑ api и ÑоÑ
ÑанÑем в пеÑеменÑÑ auth_key134 #_, auth_key = pf.get_api_key(valid_email, valid_password)135136 # ÐобавлÑем пиÑомÑа137 status, result = pf.add_new_pet(get_api_key, name, animal_type, age, pet_photo)138139 # СвеÑÑем полÑÑеннÑй оÑÐ²ÐµÑ Ñ Ð¾Ð¶Ð¸Ð´Ð°ÐµÐ¼Ñм ÑезÑлÑÑаÑом140 assert status == 200141 assert result['name'] == '', 'ÐиÑÐ¾Ð¼ÐµÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½ на ÑÐ°Ð¹Ñ Ñ Ð¿ÑÑÑÑм знаÑением в имени'142143144# 3 # ТеÑÑ Ñ Ð°Ð²ÑоÑизаÑией ÑеÑез ÑикÑÑÑÑÑ145def test_add_new_pet_without_photo_with_valid_data(get_api_key, name='Tom', animal_type='catou', age='5'):146 """ÐÑовеÑÑем, ÑÑо можно добавиÑÑ Ð¿Ð¸ÑомÑа Ñ ÐºÐ¾ÑÑекÑнÑми даннÑми без ÑоÑо"""147148 # ÐапÑаÑиваем клÑÑ api и ÑоÑ
ÑанÑем в пеÑеменÑÑ auth_key149 #_, auth_key = pf.get_api_key(valid_email, valid_password)150151 # ÐобавлÑем пиÑомÑа152 status, result = pf.add_new_pets_no_photo(get_api_key, name, animal_type, age)153154 # СвеÑÑем полÑÑеннÑй оÑÐ²ÐµÑ Ñ Ð¾Ð¶Ð¸Ð´Ð°ÐµÐ¼Ñм ÑезÑлÑÑаÑом155 assert status == 200156 assert result['name'] == name157 assert result['pet_photo'] == ''158159# 4 # ТеÑÑ Ñ Ð°Ð²ÑоÑизаÑией ÑеÑез ÑикÑÑÑÑÑ160def test_add_pet_new_photo(get_api_key, pet_photo='images/cat11.jpg'):161 """ÐÑовеÑÑем ÑÑо можно добавиÑÑ/измениÑÑ ÑоÑо пиÑомÑа"""162163 # ÐолÑÑаем полнÑй пÑÑÑ Ð¸Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¸ÑомÑа и ÑоÑ
ÑанÑем в пеÑеменнÑÑ pet_photo164 pet_photo = os.path.join(os.path.dirname(__file__), pet_photo)165166 # ÐолÑÑаем клÑÑ auth_key и ÑпиÑок ÑвоиÑ
пиÑомÑев167 #_, auth_key = pf.get_api_key(valid_email, valid_password)168 _, my_pets = pf.get_list_of_pets(get_api_key, "my_pets")169170 # ÐобавлÑем(еÑли без ÑоÑо)/изменÑем ÑоÑо пиÑомÑа171 status, result = pf.update_pet_set_photo(get_api_key, my_pets['pets'][4]['id'], pet_photo)172173 # СвеÑÑем полÑÑеннÑй оÑÐ²ÐµÑ Ñ Ð¾Ð¶Ð¸Ð´Ð°ÐµÐ¼Ñм ÑезÑлÑÑаÑом174 assert status == 200175 assert result['pet_photo'] != ''176177178# 5 # ТеÑÑ Ñ Ð°Ð²ÑоÑизаÑией ÑеÑез ÑикÑÑÑÑÑ179def test_update_self_pet_info_passed(get_api_key, name='ÐекÑ', animal_type='ÐоÑÑ', age=5):180 """ТеÑÑ Ð½Ð° возможноÑÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸Ð½ÑоÑмаÑии о пиÑомÑе"""181182 # ÐолÑÑение клÑÑа auth_key и ÑпиÑка ÑвоиÑ
пиÑомÑев183 #_, auth_key = pf.get_api_key(valid_email, valid_password)184 _, my_pets = pf.get_list_of_pets(get_api_key, "my_pets")185186 # ÐÑли ÑпиÑок не пÑÑÑой, Ñо обновлÑем имÑ, Ñип и возÑаÑÑ Ð¿ÐµÑвого в ÑпиÑке пиÑомÑа (поÑледнего добавленного)187 if len(my_pets['pets']) > 0:188 status, result = pf.update_pet_info(get_api_key, my_pets['pets'][1]['id'], name, animal_type, age)189190 # ÐÑовеÑка, ÑÑо ÑÑаÑÑÑ Ð¾ÑвеÑа = 200, и Ð¸Ð¼Ñ Ð¿Ð¸ÑомÑа ÑооÑвеÑÑÑвÑÐµÑ Ð·Ð°Ð´Ð°Ð½Ð½Ð¾Ð¼Ñ191 assert status == 200192 assert result['name'] == name193 else:194 # ÐÑли Ñпиок пиÑомÑев пÑÑÑ, Ñо вÑкидÑваем иÑклÑÑение Ñ ÑекÑÑом об оÑÑÑÑÑÑвии ÑвоиÑ
пиÑомÑев195 raise Exception("СпиÑок пиÑомÑев пÑÑÑ")196197# 6198def test_get_api_key_with_wrong_password_and_correct_mail(email=valid_email, password=invalid_password):199 '''ÐÑовеÑÑем ÑÑо запÑÐ¾Ñ api клÑÑа Ñ Ð²Ð°Ð»Ð¸Ð´Ð½Ñм имейлом и Ñ Ð½ÐµÐ²Ð°Ð»Ð¸Ð´Ð½Ñм паÑолем.200 ÐÑовеÑÑем Ð½ÐµÑ Ð»Ð¸ клÑÑа в оÑвеÑе'''201202 # ÐÑпÑавлÑем запÑÐ¾Ñ Ð¸ ÑоÑ
ÑанÑем полÑÑеннÑй оÑÐ²ÐµÑ Ñ ÐºÐ¾Ð´Ð¾Ð¼ ÑÑаÑÑÑа в status,203 # а ÑекÑÑ Ð¾ÑвеÑа в result204 status, result = pf.get_api_key(email, password)205206 # СвеÑÑем полÑÑеннÑе даннÑе Ñ Ð½Ð°Ñими ожиданиÑми207 assert status == 403208 assert 'key' not in result209210# 7211def test_get_api_key_with_wrong_email_and_correct_password(email=invalid_email, password=valid_password):212 '''ÐÑовеÑÑем ÑÑо запÑÐ¾Ñ api клÑÑа Ñ Ð½ÐµÐ²Ð°Ð»Ð¸Ð´Ð½Ñм имейлом и валиднÑм паÑолем.213 ÐÑовеÑÑем Ð½ÐµÑ Ð»Ð¸ клÑÑа в оÑвеÑе'''214215 # ÐÑпÑавлÑем запÑÐ¾Ñ Ð¸ ÑоÑ
ÑанÑем полÑÑеннÑй оÑÐ²ÐµÑ Ñ ÐºÐ¾Ð´Ð¾Ð¼ ÑÑаÑÑÑа в status,216 # а ÑекÑÑ Ð¾ÑвеÑа в result217 status, result = pf.get_api_key(email, password)218219 # СвеÑÑем полÑÑеннÑе даннÑе Ñ Ð½Ð°Ñими ожиданиÑми220 assert status == 403221 assert 'key' not in result222223224# 8225def test_get_api_key_for_empty_email_user(email = empty_email, password = empty_password):226 '''ÐÑовеÑÑем ÑÑо запÑÐ¾Ñ api клÑÑа Ñ Ð¿ÑÑÑÑм имейлом и Ñ Ð¿ÑÑÑÑм паÑолем.227 ÐÑовеÑÑем Ð½ÐµÑ Ð»Ð¸ клÑÑа в оÑвеÑе'''228229 # ÐÑпÑавлÑем запÑÐ¾Ñ Ð¸ ÑоÑ
ÑанÑем полÑÑеннÑй оÑÐ²ÐµÑ Ñ ÐºÐ¾Ð´Ð¾Ð¼ ÑÑаÑÑÑа в status,230 # а ÑекÑÑ Ð¾ÑвеÑа в result231 status, result = pf.get_api_key(email, password)232233 # СвеÑÑем полÑÑеннÑе даннÑе Ñ Ð½Ð°Ñими ожиданиÑми234 assert status == 403235 assert 'key' not in result236237238# 9 # ТеÑÑ Ñ Ð°Ð²ÑоÑизаÑией ÑеÑез ÑикÑÑÑÑÑ239def test_add_new_pet_with_wrong_age(get_api_key, name='коÑÑнекоÑÑ', animal_type='коÑ',240 age='-9', pet_photo='images/cat11.jpg'):241 '''ÐÑовеÑка Ñ Ð½ÐµÐ³Ð°ÑивнÑм ÑÑенаÑием. Ðобавление пиÑомÑа Ñ Ð¾ÑÑиÑаÑелÑнÑм ÑиÑлом в пеÑеменной age.242 ТеÑÑ Ð½Ðµ бÑÐ´ÐµÑ Ð¿Ñойден еÑли пиÑÐ¾Ð¼ÐµÑ Ð±ÑÐ´ÐµÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½ на ÑÐ°Ð¹Ñ Ñ Ð¾ÑÑиÑаÑелÑнÑм ÑиÑлом в поле возÑаÑÑ.243 '''244 # ÐолÑÑаем полнÑй пÑÑÑ Ð¸Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¸ÑомÑа и ÑоÑ
ÑанÑем в пеÑеменнÑÑ pet_photo245 pet_photo = os.path.join(os.path.dirname(__file__), pet_photo)246247 # ÐапÑаÑиваем клÑÑ api и ÑоÑ
ÑанÑем в пеÑеменÑÑ auth_key248 #_, auth_key = pf.get_api_key(valid_email, valid_password)249250 # ÐобавлÑем пиÑомÑа251 status, result = pf.add_new_pet(get_api_key, name, animal_type, age, pet_photo)252253 # СвеÑÑем полÑÑеннÑй оÑÐ²ÐµÑ Ñ Ð¾Ð¶Ð¸Ð´Ð°ÐµÐ¼Ñм ÑезÑлÑÑаÑом254 assert status == 200255 assert age in result['age']256 assert int(result['age']) < 0 #'ÐиÑÐ¾Ð¼ÐµÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½ на ÑÐ°Ð¹Ñ Ñ Ð¾ÑÑиÑаÑелÑнÑм ÑиÑлом в поле возÑаÑÑ'257258########## ТеÑÑ Ñ Ð°Ð²ÑоÑизаÑией ÑеÑез ÑикÑÑÑÑÑ259# # 10 ÑеÑÑ ÑабоÑий ,ÐÐÐ ÐÐ ÐÐÐÐÐ ÐÐÐÐÐ¥ÐÐÐÐÐСТРÐÐ ÐÐÐУСÐÐТЬ!!! СÐÐСÐТ ÐСÐÐ¥ ÐÐТÐÐЦÐÐ!!!260# def test_delete_all_my_pets(get_api_key):261# """ÐÑовеÑÑем возможноÑÑÑ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð²ÑеÑ
пиÑомÑев"""262#263# # ÐолÑÑаем клÑÑ auth_key и запÑаÑиваем ÑпиÑок ÑвоиÑ
пиÑомÑев264# â_, auth_key = pf.get_api_key(valid_email, valid_password)265# _, my_pets = pf.get_list_of_pets(get_api_key, "my_pets")266#267# # Ñоздаем Ñикл, в коÑоÑом пÑопиÑÑваем ÑÑловиÑ, еÑли колиÑеÑÑво пиÑомÑев болÑÑе, Ñем 0,268# # Ñо ÑдалÑем пиÑомÑа под â0, до ÑеÑ
поÑ, пока колиÑеÑÑво бÑÐ´ÐµÑ Ñавно нÑлÑ269# while len(my_pets['pets']) > 0:270# pet_id = my_pets['pets'][0]['id']271# _, my_pets = pf.get_list_of_pets(get_api_key, "my_pets")272# status, _ = pf.delete_pet(get_api_key, pet_id)273# if len(my_pets['pets']) == 0:274# break275# # ÐÑÑ Ñаз запÑаÑиваем ÑпиÑок ÑвоиÑ
пиÑомÑев276# _, my_pets = pf.get_list_of_pets(get_api_key, "my_pets")277#278# # ÐÑовеÑÑем ÑÑо ÑÑаÑÑÑ Ð¾ÑвеÑа Ñавен 200 и в ÑпиÑке пиÑомÑев Ð½ÐµÑ id ÑдалÑнного пиÑомÑа
...
positive.py
Source:positive.py
...11 return '|\\/!@#$%^&*()-_=+`~?"â;:[]{}'12def generate_string(n):13 return n*'x'14@pytest.fixture(scope="module")15def get_api_key():16 # ÐÑпÑавлÑем запÑÐ¾Ñ Ð¸ ÑоÑ
ÑанÑем полÑÑеннÑй оÑÐ²ÐµÑ Ñ ÐºÐ¾Ð´Ð¾Ð¼ ÑÑаÑÑÑа в status, а ÑекÑÑ Ð¾ÑвеÑа в result17 status, result = pf.get_api_key(valid_email, valid_password)18 # СвеÑÑем полÑÑеннÑе даннÑе Ñ Ð½Ð°Ñими ожиданиÑми19 assert status == 20020 assert 'key' in result21 return result22#пÑовеÑÑем возможноÑÑÑ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ ÑпиÑка моиÑ
пиÑомÑев Ñ Ð²Ð°Ð»Ð¸Ð´Ð½Ñм клÑÑом api23@pytest.mark.parametrize("filter", ['', 'my_pets'], ids= ['empty string', 'only my pets'])24def test_get_all_pets_with_valid_key(get_api_key,filter):25 pytest.status, result = pf.get_pet_list(get_api_key, filter)26 assert len(result['pets']) > 027#пÑовеÑÑем возможноÑÑÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¸ÑомÑа Ñ Ð²Ð°Ð»Ð¸Ð´Ð½Ñм клÑÑом api и даннÑми28@pytest.mark.parametrize("name"29 , [generate_string(255),30 generate_string(1001),31 russian_chars(),...
mp_backend.py
Source:mp_backend.py
1from application.receiving_queue.routes import QueueRouter2from application.security.core.api_key import API_KEY_NAME, get_api_key3from application.workstatus.routes import WorkStatusRouter4from fastapi import FastAPI, Depends5from fastapi.middleware.cors import CORSMiddleware6import sqlalchemy as sa7from application.core import config8from application.core.database import Base, engine9from application.typework.routes import TypeWorkRouter10from application.publicwork.routes import PublicWorkRouter11from application.collect.routes import CollectRouter12from application.photo.routes import PhotoRouter13from application.image.routes import ImageRouter14from application.typephoto.routes import TypePhotoRouter15from application.address.routes import AddressRouter16from application.associations.routes import AssociationRouter17from application.security.routes import SecurityRouter18from fastapi.openapi.docs import get_swagger_ui_html19from fastapi.openapi.models import APIKey20from sentry_sdk.integrations.asgi import SentryAsgiMiddleware21sa.orm.configure_mappers()22Base.metadata.create_all(bind=engine)23mpApi = FastAPI(24 title='F05 Backend API',25 description='API backend for the project F05',26 version="1.8.2",27 openapi_prefix=config.settings.api_prefix,28 docs_url=None,29 redoc_url=None,30)31origins = ["*"]32mpApi.add_middleware(33 CORSMiddleware,34 allow_origins=origins,35 allow_credentials=True,36 allow_methods=["*"],37 allow_headers=["*"],38)39mpApi.add_middleware(SentryAsgiMiddleware)40routes = [41 TypeWorkRouter("typeworks", mpApi, [Depends(get_api_key)]),42 PublicWorkRouter("publicworks", mpApi, [Depends(get_api_key)]),43 CollectRouter("collects", mpApi, [Depends(get_api_key)]),44 PhotoRouter("photos", mpApi, [Depends(get_api_key)]),45 ImageRouter("images", mpApi, [Depends(get_api_key)]),46 TypePhotoRouter("typephotos", mpApi, [Depends(get_api_key)]),47 AddressRouter("address", mpApi, [Depends(get_api_key)]),48 AssociationRouter("association", mpApi, [Depends(get_api_key)]),49 SecurityRouter("security", mpApi, [Depends(get_api_key)]),50 WorkStatusRouter("workstatus", mpApi, [Depends(get_api_key)]),51 QueueRouter("queue", mpApi, [Depends(get_api_key)])52]53for route in routes:54 route.apply_route()55@mpApi.get("/")56async def homepage():57 return "Welcome to the Trena API!"58@mpApi.get("/docs", tags=["docs"], dependencies=[Depends(get_api_key)])59async def get_documentation(api_key: APIKey = Depends(get_api_key)):60 response = get_swagger_ui_html(61 openapi_url="{0}{1}?{2}={3}".format(config.settings.api_prefix, mpApi.openapi_url, API_KEY_NAME, api_key),62 title="docs")...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!