single
Challenge: Mockning av Interna Beroenden
Svep för att visa menyn
Du står inför en magisk utmaning: som lärlingstrollkarl behöver du säkerställa att din trollstavs besvärjelseskript fungerar korrekt, även när de oförutsägbara manakrafterna är i spel. Trollstaven förlitar sig på en funktion kallad get_mana_level() för att känna av den omgivande magiska energin. Om manan är tillräckligt hög, slår din eldiga besvärjelse ut; om inte, förvandlas den till en besvikande puff. För att testa din besvärjelse pålitligt måste du mocka mananivån, och simulera både hög och låg magisk energi.
Svep för att börja koda
Ditt uppdrag är att skapa ett robust trollformel-system och testa det med hjälp av mocks.
- Skapa en funktion
get_mana_level()som returnerar ett slumpmässigt heltal mellan 0 och 100. - Skapa en funktion
cast_spell()som:- Anropar
get_mana_level(). - Om mananivån är 50 eller högre, returnerar
"Fireball cast successfully!". - Annars returnerar
"The spell fizzled...".
- Anropar
- Skriv två tester med
unittest:- Använd
patchför att fåget_mana_level()att returnera 80, och kontrollera attcast_spell()returnerar framgångsmeddelandet. - Använd
patchför att fåget_mana_level()att returnera 20, och kontrollera attcast_spell()returnerar misslyckandemeddelandet.
- Använd
Tips:
- Använd
random.randinti din funktionget_mana_level(). - För att patcha korrekt, rikta in dig på
'get_mana_level'i dina tester.
Lösning
Tack för dina kommentarer!
single
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal