mirror of
https://github.com/pinry/pinry.git
synced 2025-11-13 08:35:41 +01:00
43 lines
1020 B
Python
43 lines
1020 B
Python
from django.conf import settings
|
|
from django.core.files.images import ImageFile
|
|
from django_images.models import Thumbnail
|
|
|
|
from taggit.models import Tag
|
|
|
|
from core.models import Pin, Image
|
|
from users.models import User
|
|
|
|
|
|
TEST_IMAGE_PATH = 'docs/src/imgs/logo-dark.png'
|
|
|
|
|
|
def create_user(username):
|
|
user, _ = User.objects.get_or_create(
|
|
username='user_{}'.format(username),
|
|
defaults={
|
|
"email": 'user_{}@example.com'.format(username)
|
|
}
|
|
)
|
|
user.set_password("password")
|
|
user.save()
|
|
return user
|
|
|
|
|
|
def create_tag(name):
|
|
return Tag.objects.get_or_create(
|
|
name='tag_{}'.format(name),
|
|
slug='tag_{}'.format(name),
|
|
)
|
|
|
|
|
|
def create_image():
|
|
image = Image.objects.create(image=ImageFile(open(TEST_IMAGE_PATH, 'rb')))
|
|
Thumbnail.objects.get_or_create_at_sizes(image, settings.IMAGE_SIZES.keys())
|
|
return image
|
|
|
|
|
|
def create_pin(user, image, tags):
|
|
pin = Pin.objects.create(submitter=user, image=image)
|
|
pin.tags.set(*tags)
|
|
return pin
|