diff --git a/src/brewing/brew_potions.py b/src/brewing/brew_potions.py index bbe6c51..d4e2bba 100644 --- a/src/brewing/brew_potions.py +++ b/src/brewing/brew_potions.py @@ -4,6 +4,7 @@ from brewing import cooking from brewing import inspection def make_example_potion(student_name="ASPP student"): + """Make and return an example potion.""" my_potion = potion_class.Potion(student_name=student_name) # Set up your old kettle and light an eternal flame underneath it. my_potion.setup(container=containers.OLD_KETTLE) diff --git a/src/brewing/containers.py b/src/brewing/containers.py index 642f170..6a4efd6 100644 --- a/src/brewing/containers.py +++ b/src/brewing/containers.py @@ -1,4 +1,5 @@ -# containers +"""Constants: containers for poton-making. +""" PEWTER_CAULDRON = 'pewter_cauldron' COPPER_CAULDRON = 'copper_cauldron' MARTINI_GLASS = 'martini_glass' diff --git a/src/brewing/cooking.py b/src/brewing/cooking.py index a3affcc..65eca53 100644 --- a/src/brewing/cooking.py +++ b/src/brewing/cooking.py @@ -1,3 +1,5 @@ +"""Functions and constants for cooking. +""" # heat sources FIRE = 'fire' ETERNAL_FLAME = 'eternal_flame' @@ -44,7 +46,8 @@ def simmer(potion, duration): if duration < 2: print('Are you sure you are cooking the potion enough? Your ingredients look a bit raw...') elif duration > 5: - print('Oops, you have fallen asleep at your desk! Are you sure you want to simmer this long?') + print('Oops, you have fallen asleep at your desk! ' + + 'Are you sure you want to simmer this long?') else: potion.cooked = True return diff --git a/src/brewing/ingredients.py b/src/brewing/ingredients.py index f79665d..aff6704 100644 --- a/src/brewing/ingredients.py +++ b/src/brewing/ingredients.py @@ -1,4 +1,5 @@ -# ingredients +"""Constants: ingredients for the potions. +""" SNAKE_SKIN = 'snake_skin' FISH_EYES = 'fish_eyes' UNICORN_HAIR = 'unicorn_hair' diff --git a/src/brewing/inspection.py b/src/brewing/inspection.py index 412365f..0375062 100644 --- a/src/brewing/inspection.py +++ b/src/brewing/inspection.py @@ -1,7 +1,10 @@ +# pylint: disable=line-too-long +"""Functionality to inspect potions. +""" import time -def inspection_by_Snape(potion, target_potion='python_expert'): +def inspection_by_Snape(potion, target_potion='python_expert'): # pylint: disable=invalid-name """Checks if potion was brewed correctly. Prints narration of inspection process - read to see if potion passed inspection. @@ -18,8 +21,8 @@ def inspection_by_Snape(potion, target_potion='python_expert'): print('-------------------------------') if not potion: - print(f'"There is no potion I can inspect!"') - print(f' (Tip: are you actually returning a proper potion and passing it to Snape?)') + print('"There is no potion I can inspect!"') + print(' (Tip: are you actually returning a proper potion and passing it to Snape?)') return print(f'A sour looking Snape walks towards you to inspect your {target_potion} potion.') @@ -35,12 +38,12 @@ def inspection_by_Snape(potion, target_potion='python_expert'): expected_heat_source = 'eternal_flame' else: print(f'"What is this, {potion.student_name}? This is not the name of an existing potion, check your spelling!"') - print(f' (Target potion was not recognised, please check your spelling.)') + print(' (Target potion was not recognised, please check your spelling.)') return # check that correct setup was used if potion.container == expected_container and potion.heat_source == expected_heat_source: - print(f'You have used the correct setup, Snape cannot complain - he looks even more sour.') + print('You have used the correct setup, Snape cannot complain - he looks even more sour.') else: print(f'Snape smirks and remarks "You have used the wrong cauldron or heat, {potion.student_name}!" \n' f'With a flick of his wand he vanishes the potion. \n' @@ -60,12 +63,12 @@ def inspection_by_Snape(potion, target_potion='python_expert'): expected_simmer_duration = 5 else: print(f'"What is this, {potion.student_name}? This is not the name of an existing potion, check your spelling!"') - print(f' (Target potion was not recognised, please check your spelling.)') + print(' (Target potion was not recognised, please check your spelling.)') return # check if all ingredients are there if sorted(potion.ingredients) == expected_ingredients: - print(f'You have used the correct ingredients, Snape cannot complain - his face darkens.') + print('You have used the correct ingredients, Snape cannot complain - his face darkens.') else: print(f'Snape smirks and remarks "You have used the wrong ingredients, {potion.student_name}!" \n' f'With a flick of his wand he vanishes the potion. \n' @@ -76,12 +79,12 @@ def inspection_by_Snape(potion, target_potion='python_expert'): # check that potion is cooked if potion.cooked == expected_cooked and potion.simmer_duration == expected_simmer_duration: - print(f'The potion is cooked properly, Snape cannot complain - he is looking annyoyed now.') + print('The potion is cooked properly, Snape cannot complain - he is looking annyoyed now.') else: if potion.simmer_duration < expected_simmer_duration: - print(f'Snape smirks and remarks "Your potion is undercooked!" \n') + print('Snape smirks and remarks "Your potion is undercooked!" \n') elif potion.simmer_duration > expected_simmer_duration: - print(f'Snape smirks and remarks "Your potion is overcooked!" \n') + print('Snape smirks and remarks "Your potion is overcooked!" \n') print(f'With a flick of his wand he vanishes the potion. \n' f'"I am taking 10 points from Hufflepuff, {potion.student_name}. Start again!"') return @@ -91,13 +94,13 @@ def inspection_by_Snape(potion, target_potion='python_expert'): print(f'Snape mutters "You got away this time, {potion.student_name}!", since there is nothing wrong with ' f'your {target_potion} potion.') print_delay_dots() - print(f'You pack your bags and leave as fast as you can to have a butterbeer at the lake!') + print('You pack your bags and leave as fast as you can to have a butterbeer at the lake!') return - def print_delay_dots(dur=0.5, number=2): - for i in range(number): + """Print dots to screen during delay.""" + for _ in range(number): time.sleep(dur) print('.') diff --git a/src/brewing/potion_class.py b/src/brewing/potion_class.py index ce8aa09..a3db8d1 100644 --- a/src/brewing/potion_class.py +++ b/src/brewing/potion_class.py @@ -1,7 +1,10 @@ +"""The potion class.""" + + class Potion: + """A class for brewing potions.""" def __init__(self, student_name): - """This is a class for brewing potions.""" self.colour = 'there-is-no-potion-so-the-potion-has-no-color' self.cooked = False self.container = None @@ -22,10 +25,10 @@ class Potion: heat_source : str, optional The name of the heat source used to cook the potions """ - if container == None: - print(f'You have not specified a container - where do you think you will brew your potion?') - if heat_source == None: - print(f'You have not specified a heat source - how will you cook the potion?') + if container is None: + print('You have not specified a container - where do you think you will brew your potion?') + if heat_source is None: + print('You have not specified a heat source - how will you cook the potion?') self.container = container self.heat_source = heat_source @@ -40,7 +43,7 @@ class Potion: A list of ingredients (str) to add to the potion. """ if ingredients is None: - print(f'You have added no ingredients - have you spilt them on the floor again?') + print('You have added no ingredients - have you spilt them on the floor again?') else: self.ingredients = ingredients self.colour = "transparent"