from faker import Faker from users.models import User faker = Faker() def create_account(username=None, email=None, password=None, name=None, **kwargs): "Allow to create accounts by passing None or specific arguements" email = email or faker.unique.email() username = username or faker.unique.user_name() password = password or faker.password() name = name or faker.name() description = kwargs.get('description') or faker.text() is_superuser = kwargs.get('is_superuser') or False is_manager = kwargs.get('is_manager') or False is_editor = kwargs.get('is_editor') or False user = User.objects.create(username=username, email=email, name=name, description=description, is_superuser=is_superuser, is_staff=is_superuser, is_editor=is_editor, is_manager=is_manager) user.set_password(password) user.save() return user