Best Python code snippet using localstack_python
ArkPlanner.py
Source:ArkPlanner.py
...192 assert len(self.stages_ap_cost) == len(self.stages_lst) == len(193 self.stages_id_to_idx)194195 def update_stages(self):196 self.update_stage({'4001': 3480}, 'sub_04-2-3', 'S4-6', 21)197 self.update_stage({'4001': 1700}, 'wk_melee_1', 'CE-1', 10)198 self.update_stage({'4001': 2800}, 'wk_melee_2', 'CE-2', 15)199 self.update_stage({'4001': 4100}, 'wk_melee_3', 'CE-3', 20)200 self.update_stage({'4001': 5700}, 'wk_melee_4', 'CE-4', 25)201 self.update_stage({'4001': 7500}, 'wk_melee_5', 'CE-5', 30)202 # self.update_stage({'4006': 21}, 'wk_toxic_1', 'AP-1', 10)203 # self.update_stage({'4006': 21}, 'wk_toxic_2', 'AP-2', 15)204 # self.update_stage({'4006': 21}, 'wk_toxic_3', 'AP-3', 20)205 # self.update_stage({'4006': 21}, 'wk_toxic_4', 'AP-4', 25)206 self.update_stage({'4006': 21, '4001': 360}, 'wk_toxic_5', 'AP-5', 30)207 self.update_stage({'3113': 0.5, '3114': 3, '4001': 360},208 'wk_armor_5', 'SK-5', 30)209 self.update_stage({'2002': 1, '2003': 1, '2004': 3,210 '4001': 360}, 'wk_kc_5', 'LS-5', 30)211212 self.update_stage(213 {'3231': 0.5, '3261': 0.5, '4001': 216}, 'pro_a_1', 'PR-A-1', 18)214 self.update_stage(215 {'3241': 0.5, '3251': 0.5, '4001': 216}, 'pro_b_1', 'PR-B-1', 18)216 self.update_stage(217 {'3211': 0.5, '3271': 0.5, '4001': 216}, 'pro_c_1', 'PR-C-1', 18)218 self.update_stage(219 {'3221': 0.5, '3281': 0.5, '4001': 216}, 'pro_d_1', 'PR-D-1', 18)220 self.update_stage(221 {'3232': 0.5, '3262': 0.5, '4001': 432}, 'pro_a_2', 'PR-A-2', 36)222 self.update_stage(223 {'3242': 0.5, '3252': 0.5, '4001': 432}, 'pro_b_2', 'PR-B-2', 36)224 self.update_stage(225 {'3212': 0.5, '3272': 0.5, '4001': 432}, 'pro_c_2', 'PR-C-2', 36)226 self.update_stage(227 {'3222': 0.5, '3282': 0.5, '4001': 432}, 'pro_d_2', 'PR-D-2', 36)228229 def update_stage(self, drop_dct, stage_id=None, stage_name=None, ap_cost=None):230 if stage_id == None:231 stage_id = self.stages_name_to_id[stage_name]232 if stage_name == None:233 stage_name = self.stages_id_to_name[stage_id]234 if ap_cost == None:235 ap_cost = self.stages_ap_cost[stage_id]236237 if stage_id not in self.stages_lst:238 stage_idx = len(self.stages_lst)239 self.stages_lst.append(stage_id)240 self.stages_id_to_idx[stage_id] = stage_idx241 self.stages_name_to_id[stage_name] = stage_id242 self.stages_id_to_name[stage_id] = stage_name243 self.stages_ap_cost[stage_id] = ap_cost
...
class_tests.py
Source:class_tests.py
...14 progress_log.save()15 self.assertEqual(progress_log.total_stages, 1, "one stage")16 self.assertEqual(progress_log.end_time, None, "end_time not set")17 self.assertEqual(progress_log.completed, False, "completed is False")18 def test_update_stage(self):19 # Create the object20 progress_log = UpdateProgressLog(process_name="test_process", total_stages=1)21 progress_log.save()22 # Complete the process23 progress_log.update_stage("test_stage", 0.5)24 self.assertEqual(progress_log.stage_percent, 0.5, "stage_percent set properly")25 self.assertEqual(progress_log.process_percent, 0.5, "process_percent set properly")26 self.assertEqual(progress_log.completed, False, "completed is False")27 def test_cancel_current_stage(self):28 # Create the object29 progress_log = UpdateProgressLog(process_name="test_process", total_stages=1)30 progress_log.save()31 progress_log.update_stage("test_stage", 0.5)32 # Complete the process33 progress_log.cancel_current_stage()34 self.assertEqual(progress_log.stage_percent, 0., "stage_percent is 0")35 self.assertEqual(progress_log.process_percent, 0., "process_percent is 0")36 self.assertEqual(progress_log.total_stages, 1, "Should still have one stage after cancel.")37 self.assertEqual(progress_log.stage_name, None, "stage name is None")38 self.assertEqual(progress_log.completed, False, "completed is False")39 self.assertEqual(progress_log.end_time, None, "end_time is not set")40 def test_update_total_stages(self):41 # Create the object42 progress_log = UpdateProgressLog(process_name="test_process", total_stages=1)43 progress_log.save()44 progress_log.update_stage("test_stage", 0.5)45 # Complete the process46 progress_log.update_total_stages(10)47 self.assertEqual(progress_log.total_stages, 10, "no stages")48 self.assertEqual(progress_log.stage_percent, 0.5, "stage_percent is 0.05")49 self.assertEqual(progress_log.process_percent, 0.05, "process_percent is 0.05")50 self.assertEqual(progress_log.stage_name, "test_stage", "stage name still set")51 self.assertEqual(progress_log.completed, False, "completed is False")52 self.assertEqual(progress_log.end_time, None, "end_time is not set")53 def test_cancel_progress(self):54 # Create the object55 progress_log = UpdateProgressLog(process_name="test_process", total_stages=1)56 progress_log.save()57 # Complete the process58 progress_log.cancel_progress()59 self.assertTrue(abs(datediff(progress_log.end_time, datetime.datetime.now())) < 10, "end time is within 10 seconds")60 self.assertEqual(progress_log.completed, False, "completed is False")61 def test_completion(self):62 # Create the object63 progress_log = UpdateProgressLog(process_name="test_process", total_stages=1)64 progress_log.save()65 # Complete the process66 progress_log.mark_as_completed()67 self.assertTrue(abs(datediff(progress_log.end_time, datetime.datetime.now())) < 10, "end time is within 10 seconds")68 self.assertEqual(progress_log.stage_percent, 1., "stage_percent==1")69 self.assertEqual(progress_log.process_percent, 1., "proces_percent==1")70 self.assertEqual(progress_log.completed, True, "completed is False")71class TestMultiStageUpdate(unittest.TestCase):72 """73 """74 def test_create(self):75 # Create the object76 progress_log = UpdateProgressLog(process_name="test_process", total_stages=10)77 progress_log.save()78 self.assertEqual(progress_log.total_stages, 10, "10 stages stage")79 self.assertEqual(progress_log.end_time, None, "end_time not set")80 self.assertEqual(progress_log.completed, False, "completed is False")81 def test_update_stage(self):82 # Create the object83 progress_log = UpdateProgressLog(process_name="test_process", total_stages=10)84 progress_log.save()85 # Complete the process86 progress_log.update_stage("test_stage", 0.5)87 self.assertEqual(progress_log.stage_percent, 0.5, "stage_percent set properly")88 self.assertEqual(progress_log.process_percent, 0.05, "process_percent set properly")89 self.assertEqual(progress_log.completed, False, "completed is False")90 def test_dual_update_stage(self):91 # Create the object92 progress_log = UpdateProgressLog(process_name="test_process", total_stages=10)93 progress_log.save()94 # Complete the process95 progress_log.update_stage("test_stage", 0.25)96 progress_log.update_stage("test_stage2", 0.5) # completes stage 197 self.assertEqual(progress_log.stage_percent, 0.5, "stage_percent set properly")98 self.assertTrue(abs(progress_log.process_percent - 0.15) < 1E10, "process_percent is 0.15")99 self.assertEqual(progress_log.completed, False, "completed is False")100 def test_cancel_current_stage(self):101 # Create the object102 progress_log = UpdateProgressLog(process_name="test_process", total_stages=10)103 progress_log.save()104 progress_log.update_stage("test_stage", 0.25)105 progress_log.update_stage("test_stage2", 0.5) # completes stage 1106 # Complete the process107 progress_log.cancel_current_stage()108 self.assertEqual(progress_log.stage_percent, 0., "stage_percent is 0")109 self.assertTrue(abs(progress_log.process_percent - 0.1) < 1E10, "process_percent is 0.1")110 self.assertEqual(progress_log.total_stages, 10, "Should still have 10 stages after cancel.")111 self.assertEqual(progress_log.stage_name, None, "stage name is None")112 self.assertEqual(progress_log.completed, False, "completed is False")113 self.assertEqual(progress_log.end_time, None, "end_time is not set")114 def test_update_total_stages(self):115 # Create the object116 progress_log = UpdateProgressLog(process_name="test_process", total_stages=10)117 progress_log.save()118 progress_log.update_stage("test_stage", 0.5)119 # Complete the process120 progress_log.update_total_stages(20)121 self.assertEqual(progress_log.total_stages, 20, "Should have 20 stages after updating total stages.")122 self.assertEqual(progress_log.stage_percent, 0.5, "stage_percent is 0.025")123 self.assertTrue(abs(progress_log.process_percent - 0.025) < 1E10, "process_percent is 0.25")124 self.assertEqual(progress_log.stage_name, "test_stage", "stage name still set")125 self.assertEqual(progress_log.completed, False, "completed is False")126 self.assertEqual(progress_log.end_time, None, "end_time is not set")127 def test_update_total_stages_in_progress(self):128 # Create the object129 progress_log = UpdateProgressLog(process_name="test_process", total_stages=10)130 progress_log.save()131 progress_log.update_stage("test_stage", 0.25)132 progress_log.update_stage("test_stage2", 0.5)133 # Complete the process134 progress_log.update_total_stages(20)135 self.assertEqual(progress_log.total_stages, 20, "Should have 20 stages after updating total stages.")136 self.assertEqual(progress_log.stage_percent, 0.5, "stage_percent is 0.05")137 self.assertTrue(abs(progress_log.process_percent - 0.075) < 1E10, "process_percent is 0.075")138 self.assertEqual(progress_log.stage_name, "test_stage2", "stage name still set")139 self.assertEqual(progress_log.completed, False, "completed is False")140 self.assertEqual(progress_log.end_time, None, "end_time is not set")141 def test_cancel_progress(self):142 # Create the object143 progress_log = UpdateProgressLog(process_name="test_process", total_stages=10)144 progress_log.save()145 # Complete the process146 progress_log.cancel_progress()...
update_handlers.py
Source:update_handlers.py
1import asyncio2from loader import bot3from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton4from aiogram.types import ReplyKeyboardMarkup, KeyboardButton, ReplyKeyboardRemove5from config import update_stage, answers6from states import Update7from .registr_handlers import Reg_state8from aiogram import Dispatcher9from aiogram import types10from aiogram.dispatcher import FSMContext11from database.db import sql_get_users_id, sql_update12from re import fullmatch13async def callback_update_handler(callback: types.CallbackQuery, state: FSMContext):14 async with state.proxy() as data:15 global lang16 lang = data['language']17 first_name = InlineKeyboardButton(text=update_stage[lang]["first_name"],18 callback_data="name")19 email = InlineKeyboardButton(text=update_stage[lang]["email"],20 callback_data="email")21 phone_number = InlineKeyboardButton(text=update_stage[lang]["phone_num"],22 callback_data="phone_number")23 geo = InlineKeyboardButton(text=update_stage[lang]["geo"],24 callback_data="location")25 global keyboard26 keyboard = InlineKeyboardMarkup().add(first_name) \27 .add(email).add(phone_number).add(geo)28 if data['user_id'] in sql_get_users_id():29 await bot.edit_message_text(message_id=callback.message.message_id,30 chat_id=callback.message.chat.id,31 text=update_stage[lang]["upd_accept"],32 reply_markup=keyboard)33 else:34 await callback.answer(update_stage[lang]["upd_decline"], show_alert=True)35 await state.finish()36async def callback_update_name(callback: types.CallbackQuery):37 await Update.name.set()38 await callback.answer(update_stage[lang]['redirect_name'])39 await bot.delete_message(chat_id=callback.message.chat.id,40 message_id=callback.message.message_id)41 await bot.send_message(chat_id=callback.message.chat.id,42 text=answers[lang]["entering_name"])43async def update_name(message: types.Message,44 state: FSMContext):45 if not message.text.isalpha() or len(message.text) < 3:46 await message.answer(answers[lang]['entering_name'])47 return await update_name(message.text, Update.name)48 else:49 async with state.proxy() as data:50 data['first_name'] = message.text.title()51 data['user_id'] = message.from_user.id52 await sql_update(state, "first_name", data['first_name'], data['user_id'])53 await message.answer(update_stage[lang]["successful_name_update"])54 await state.finish()55async def callback_update_phone(callback: types.CallbackQuery):56 await Update.phone.set()57 await callback.answer(update_stage[lang]['redirect_phone'])58 await asyncio.sleep(1)59 await bot.delete_message(chat_id=callback.message.chat.id,60 message_id=callback.message.message_id)61 await bot.send_message(chat_id=callback.message.chat.id,62 text=answers[lang]["entering_phone"])63async def update_phone(message: types.Message, state: FSMContext):64 async with state.proxy() as data:65 if bool(fullmatch(r"\+\d{9,20}", message.text)):66 data["phone"] = message.text67 data["user_id"] = message.from_user.id68 await sql_update(state, "phone_number", data["phone"], data["user_id"])69 await message.answer(update_stage[lang]["successful_phone_update"])70 else:71 await message.answer(answers[lang]['validate_phone'])72 return await update_phone(message.text, state)73 await state.finish()74async def callback_update_email(callback: types.CallbackQuery):75 await Update.email.set()76 await callback.answer(update_stage[lang]['redirect_email'])77 await asyncio.sleep(1)78 await bot.delete_message(chat_id=callback.message.chat.id,79 message_id=callback.message.message_id)80 await bot.send_message(chat_id=callback.message.chat.id,81 text=answers[lang]["entering_mail"])82async def update_email(message: types.Message, state: FSMContext):83 async with state.proxy() as data:84 if bool(fullmatch(r"^\w[^.\s]{0,10}.??[^.\s]{1,10}.??[^.\s]{0,10}.??[^.\s]"85 r"{0,10}[^.\s]{0,25}@[a-zA-Z]{1,32}-??\d{0,32}\d{0,32}.\w{1,10}$",86 message.text)):87 data["email"] = message.text88 data["user_id"] = message.from_user.id89 await sql_update(state, "email", data["email"], data["user_id"])90 await message.answer(update_stage[lang]["successful_email_update"])91 else:92 await message.answer(answers[lang]['try_mail'])93 return await update_email(message.text, state)94 await state.finish()95async def callback_update_location(callback: types.CallbackQuery):96 await Update.location.set()97 location_sending_button = KeyboardButton(update_stage[lang]['location'],98 request_location=True)99 location = ReplyKeyboardMarkup(resize_keyboard=True).add(location_sending_button)100 await callback.answer(update_stage[lang]['redirect_location'])101 await asyncio.sleep(1)102 await bot.delete_message(chat_id=callback.message.chat.id,103 message_id=callback.message.message_id)104 await bot.send_message(chat_id=callback.message.chat.id,105 text=update_stage[lang]["send_location"],106 reply_markup=location)107async def update_location(message: types.Message):108 await message.answer(update_stage[lang]["successful_location_update"],109 reply_markup=ReplyKeyboardRemove())110def reg_update_handlers(dp: Dispatcher):111 dp.register_callback_query_handler(callback_update_handler,112 lambda callback: callback.data == "upd",113 state=Reg_state.callback)114 dp.register_callback_query_handler(callback_update_name,115 lambda callback: callback.data == "name")116 dp.register_callback_query_handler(callback_update_phone,117 lambda callback: callback.data == "phone_number")118 dp.register_callback_query_handler(callback_update_email,119 lambda callback: callback.data == "email")120 dp.register_callback_query_handler(callback_update_location,121 lambda callback: callback.data == "location")122 dp.register_message_handler(update_name, state=Update.name)123 dp.register_message_handler(update_phone, state=Update.phone)124 dp.register_message_handler(update_email, state=Update.email)125 dp.register_message_handler(update_location, state=Update.location,...
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!!