from behave import given, when, then from peewee import IntegrityError from tui_rsync.models.models import create_tables from tui_rsync.models.models import Source @given('the label "{label}"') def given_source_label(context, label): create_tables() context.label = label @given('the path "{source_path}"') def given_source_path(context, source_path): context.source_path = source_path @given('the arguments "{arguments}"') def given_source_arguments(context, arguments): context.args = arguments if arguments == "": context.args = "" @when('I add the source') def add_source(context): try: context.source = Source.create_save( context.label, context.source_path, [], context.args, ) except IntegrityError: context.exception_raised = True else: context.exception_raised = False @then('the source should be added successfully') def path_has_added(context): assert context.exception_raised == False assert context.source.label == context.label assert context.source.source.path == context.source_path assert context.source.args.command == context.args