84 lines
2.1 KiB
Python
84 lines
2.1 KiB
Python
from cookbook.models import Recipe, Storage
|
|
from django.contrib import auth
|
|
from django.urls import reverse
|
|
from pytest_django.asserts import assertTemplateUsed
|
|
|
|
|
|
def test_switch_recipe(u1_s1, recipe_1_s1, space_1):
|
|
external_recipe = Recipe.objects.create(
|
|
name='Test',
|
|
internal=False,
|
|
created_by=auth.get_user(u1_s1),
|
|
space=space_1,
|
|
)
|
|
|
|
url = reverse('edit_recipe', args=[recipe_1_s1.pk])
|
|
r = u1_s1.get(url)
|
|
print(r)
|
|
assert r.status_code == 302
|
|
|
|
r = u1_s1.get(r.url)
|
|
assertTemplateUsed(r, 'forms/edit_internal_recipe.html')
|
|
|
|
url = reverse('edit_recipe', args=[external_recipe.pk])
|
|
r = u1_s1.get(url)
|
|
assert r.status_code == 302
|
|
|
|
r = u1_s1.get(r.url)
|
|
assertTemplateUsed(r, 'generic/edit_template.html')
|
|
|
|
|
|
def test_convert_recipe(u1_s1, space_1):
|
|
external_recipe = Recipe.objects.create(
|
|
name='Test',
|
|
internal=False,
|
|
created_by=auth.get_user(u1_s1),
|
|
space=space_1,
|
|
)
|
|
|
|
r = u1_s1.get(reverse('edit_convert_recipe', args=[external_recipe.pk]))
|
|
assert r.status_code == 302
|
|
|
|
external_recipe.refresh_from_db()
|
|
assert external_recipe.internal
|
|
|
|
|
|
def test_external_recipe_update(u1_s1, u1_s2, space_1):
|
|
storage = Storage.objects.create(
|
|
name='TestStorage',
|
|
method=Storage.DROPBOX,
|
|
created_by=auth.get_user(u1_s1),
|
|
token='test',
|
|
username='test',
|
|
password='test',
|
|
space=space_1,
|
|
)
|
|
|
|
recipe = Recipe.objects.create(
|
|
name='Test',
|
|
created_by=auth.get_user(u1_s1),
|
|
storage=storage,
|
|
space=space_1,
|
|
)
|
|
|
|
url = reverse('edit_external_recipe', args=[recipe.pk])
|
|
|
|
r = u1_s1.get(url)
|
|
assert r.status_code == 200
|
|
|
|
u1_s2.post(
|
|
url,
|
|
{'name': 'Test', 'working_time': 15, 'waiting_time': 15, 'servings': 1, }
|
|
)
|
|
recipe.refresh_from_db()
|
|
assert recipe.working_time == 0
|
|
assert recipe.waiting_time == 0
|
|
|
|
u1_s1.post(
|
|
url,
|
|
{'name': 'Test', 'working_time': 15, 'waiting_time': 15, 'servings': 1, }
|
|
)
|
|
recipe.refresh_from_db()
|
|
assert recipe.working_time == 15
|
|
assert recipe.waiting_time == 15
|