Build a User Configuration Manager - Build a User Configuration Manager

Tell us what’s happening:

All tests run well with my code, but somehow almost all requirements with strings are failed and I just don’t see why.

Your code so far

def add_setting(settings, change):
    key, value = change
    key = key.lower()
    value = value.lower()
    if key in settings.keys():
        print(f'Setting \'{key}\' already exists! Cannot add a new setting with this name.')
    else:
        settings.update({key : value})
        print(f'Setting \'{key}\' added with value \'{value}\' succesfully!')

def update_setting(settings, update):
    key, value = update
    key = key.lower()
    value = value.lower()
    if key in settings.keys():
        settings.update({key : value})
        print(f'Setting \'{key}\' updated to \'{value}\' succesfully!')
    else:
        print(f'Setting \'{key}\' does not exist! Cannot update a non-existing setting.')


def delete_setting(settings, item):
    delete = item.lower()
    if delete in settings.keys():
        settings.pop(delete, 0)
        print(f'Setting \'{delete}\' deleted succesfully!')
    else:
        print(f'Setting not found!')

def view_settings(settings):
    if len(settings.keys()) == 0:
        print(f'No settings available.\n')
    else:
        print(f'Current user settings:\n')
        for key, value in settings.items():
            print(f'{key.capitalize()}: {value.lower()}\n')

test_settings = {
    'test1' : 'value1',
    'test2' : 'value2',
    'test3' : 'value3'
}

test2_settings = {}

add_setting(test_settings, ("Background", "red"))
update_setting(test_settings, ('color', 'low'))
view_settings(test_settings)
view_settings(test2_settings)
add_setting({'theme': 'light'}, ('THEME', 'dark'))
add_setting({'theme': 'light'}, ('volume', 'high'))
delete_setting({'theme': 'light'}, 'bro')

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 OPR/124.0.0.0

Challenge Information:

Build a User Configuration Manager - Build a User Configuration Manager

  1. add_setting({'theme': 'light'}, ('THEME', 'dark')) should return the error message Setting 'theme' already exists! Cannot add a new setting with this name..

return vs print()