diff --git a/scipost_django/blog/factories.py b/scipost_django/blog/factories.py new file mode 100644 index 0000000000000000000000000000000000000000..a5138dfaf1dffce51ba57e98608355ecf435cee0 --- /dev/null +++ b/scipost_django/blog/factories.py @@ -0,0 +1,34 @@ +__copyright__ = "Copyright © Stichting SciPost (SciPost Foundation)" +__license__ = "AGPL v3" + +from django.utils.text import slugify +import factory + +from common.faker import LazyAwareDate, LazyRandEnum +from scipost.factories import UserFactory + +from .models import BlogPost, Category + + +class CategoryFactory(factory.django.DjangoModelFactory): + class Meta: + model = Category + + title = factory.Faker("word") + slug = factory.LazyAttribute(lambda self: slugify(self.title)) + description = factory.Faker("paragraph") + + +class BlogPostFactory(factory.django.DjangoModelFactory): + class Meta: + model = BlogPost + + status = LazyRandEnum(BlogPost.STATUS_CHOICES) + title = factory.Faker("sentence") + slug = factory.LazyAttribute(lambda self: slugify(self.title)) + blurb = factory.Faker("paragraph") + blurb_image = factory.django.ImageField() + blurb_image_caption = factory.Faker("paragraph") + body = factory.Faker("paragraphs", nb=3) + date_posted = LazyAwareDate("date_this_decade") + posted_by = factory.SubFactory(UserFactory) diff --git a/scipost_django/blog/tests.py b/scipost_django/blog/tests.py deleted file mode 100644 index ddef03c4df91383dfce15a034976e3a469d77d70..0000000000000000000000000000000000000000 --- a/scipost_django/blog/tests.py +++ /dev/null @@ -1,7 +0,0 @@ -__copyright__ = "Copyright © Stichting SciPost (SciPost Foundation)" -__license__ = "AGPL v3" - - -from django.test import TestCase - -# Create your tests here. diff --git a/scipost_django/blog/tests/__init__.py b/scipost_django/blog/tests/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/scipost_django/blog/tests/test_factories.py b/scipost_django/blog/tests/test_factories.py new file mode 100644 index 0000000000000000000000000000000000000000..e9733db1107bb20ede06c9bbf7299143a0d9424d --- /dev/null +++ b/scipost_django/blog/tests/test_factories.py @@ -0,0 +1,17 @@ +__copyright__ = "Copyright © Stichting SciPost (SciPost Foundation)" +__license__ = "AGPL v3" + +from django.test import TestCase +from ..factories import BlogPostFactory, CategoryFactory + + +class TestCategoryFactory(TestCase): + def test_can_create_categories(self): + category = CategoryFactory() + self.assertIsNotNone(category) + + +class TestBlogPostFactory(TestCase): + def test_can_create_blog_posts(self): + blog_post = BlogPostFactory() + self.assertIsNotNone(blog_post)