Ejemplo n.º 1
0
def test_serializer():
    pa = PaprikaAccountFactory()
    recipe = get_test_recipe_dict(overrides={
        'paprika_account': pa.id,
        'categories': []
    })
    rs = RecipeSerializer(data=recipe)
    assert rs.is_valid(), rs.errors
Ejemplo n.º 2
0
def test_serializer_supports_mixed_valid_and_bad_categories():
    pa = PaprikaAccountFactory()
    cat = CategoryFactory(**get_test_categories_dict()[0], paprika_account=pa)
    recipe = get_test_recipe_dict(overrides={'paprika_account': pa.id})
    recipe['categories'].append('not-a-real-category')
    rs = RecipeSerializer(data=recipe)
    assert rs.is_valid(), rs.errors
    rs.save()
    assert rs.instance.categories.get() == cat
Ejemplo n.º 3
0
def test_serializer_photo_url_strips_querystring():
    pa = PaprikaAccountFactory()
    recipe = get_test_recipe_dict(overrides={
        'paprika_account': pa.id,
        'categories': []
    })
    rs = RecipeSerializer(data=recipe)
    assert rs.is_valid(), rs.errors
    assert '?' not in rs.validated_data['photo_url']
Ejemplo n.º 4
0
import pytest

from django.core.management import call_command
from django.utils import timezone

from paprika_sync.core.models import PaprikaAccount, Recipe, NewsItem
from paprika_sync.core.tests.factories import PaprikaAccountFactory, get_test_recipe_dict, get_test_recipes_dict, recipes_to_api_dict, RecipeFactory, get_test_categories_dict, recipe_to_api_dict

pytestmark = pytest.mark.django_db


@mock.patch('paprika_sync.core.models.PaprikaAccount.get_recipes',
            return_value=get_test_recipes_dict())
@mock.patch('paprika_sync.core.models.PaprikaAccount.get_recipe',
            return_value=get_test_recipe_dict())
@mock.patch('paprika_sync.core.models.PaprikaAccount.get_categories',
            return_value=get_test_categories_dict())
def test_import_new_account_recipes(mock_recipe, mock_recipes, mock_categories,
                                    user):
    pa = PaprikaAccountFactory(
        import_sync_status=PaprikaAccount.IMPORT_DEFERRED)
    assert Recipe.objects.all().count() == 0
    call_command('import_new_account_recipes')
    assert Recipe.objects.all().count() == 1
    pa = PaprikaAccount.objects.get(id=pa.id)
    assert pa.import_sync_status == PaprikaAccount.SYNC_SUCCESS


@mock.patch('paprika_sync.core.models.PaprikaAccount.get_categories',
            return_value=get_test_categories_dict())