Как написать unittest, для python, для кода, который только запоминает и выводит текст, но в большом объеме ?как написать unittest для вот этого кода

import sys
import datetime

last_id = 1
things = []
the_seq = []

def fun1(memo, tags):
    global last_id
    things.append([memo, tags, datetime.date.today(), last_id])
    last_id += 1


def entering_values(thing_id, memo, tags):
    for i in range(len(things)):
        thing = things[i]
        if thing[3] == thing_id:
            if memo:
                thing[0] = memo
            if tags:
                thing[1] = tags
            break

def search(filter):
        return [thing 
        for thing in things
         if filter in thing[0] or filter in thing[1]]

def display():
    print(''.join(80 * ["="]))
    print(f""" 
Notebook Menu:
1. Show all Notes
2. Search Notes
3. Add Note 
4. Modify Note 
5. Quit 
""")

def shower(things=None):
    for i in range(len(things)):
        thing = things[i]
        print(f"""Note id: {thing[3]}
Note tags: {thing[1]}
Note text: {thing[0]}
""")
 
def poiski_zaDengi():
    k = input("Search for: ")
    things = search(k)
    shower(things)

def addition():
    memo = input("Enter a memo: ")
    tag = input("Enter tag: ")
    fun1(memo, tag)
    print("Your note has been added.")

def modification():
    id = int(input("Enter a note id: "))
    memo = input("Enter a memo: ")
    tags = input("Enter tags: ")
    entering_values(id, memo, tags)

def quit():
    print("Thank you for using your Notebook today.")
    sys.exit(0)

while True:
    display()
    vibrali = input("Enter an option: ")
    deistvie = None
    if vibrali == '1':
        deistvie = shower
    elif vibrali == '2':
        deistvie = poiski_zaDengi
    elif vibrali == '3':
        deistvie = addition
    elif vibrali == '4':
        deistvie = modification
    elif vibrali == '5':
        deistvie = quit
    if deistvie:
        print(''.join(80 * ["="]))
        deistvie()
    else:
        print(f"{vibrali} is not a valid choice")

Ответы (0 шт):