added more tests and test structure
This commit is contained in:
0
cookbook/tests/edits/__init__.py
Normal file
0
cookbook/tests/edits/__init__.py
Normal file
@ -1,51 +1,57 @@
|
|||||||
from django.contrib import auth
|
from django.contrib import auth
|
||||||
from django.contrib.auth.models import User
|
|
||||||
from django.test import TestCase, Client
|
|
||||||
from django.urls import reverse
|
from django.urls import reverse
|
||||||
|
|
||||||
from cookbook.models import Recipe, RecipeIngredient
|
from cookbook.models import Recipe, RecipeIngredient
|
||||||
|
from cookbook.tests.views.test_views import TestViews
|
||||||
|
|
||||||
|
|
||||||
class TestViews(TestCase):
|
class TestEditsRecipe(TestViews):
|
||||||
|
|
||||||
def setUp(self):
|
def test_switch_recipe(self):
|
||||||
self.client = Client()
|
internal_recipe = Recipe.objects.create(
|
||||||
self.anonymous_client = Client()
|
name='Test',
|
||||||
self.client.force_login(User.objects.get_or_create(username='test')[0])
|
internal=True,
|
||||||
user = auth.get_user(self.client)
|
created_by=auth.get_user(self.client)
|
||||||
self.assertTrue(user.is_authenticated)
|
)
|
||||||
|
|
||||||
def test_index(self):
|
external_recipe = Recipe.objects.create(
|
||||||
r = self.client.get(reverse('index'))
|
name='Test',
|
||||||
self.assertEqual(r.status_code, 200)
|
internal=False,
|
||||||
|
created_by=auth.get_user(self.client)
|
||||||
|
)
|
||||||
|
|
||||||
r = self.anonymous_client.get(reverse('index'))
|
url = reverse('edit_recipe', args=[internal_recipe.pk])
|
||||||
self.assertEqual(r.status_code, 200)
|
|
||||||
|
|
||||||
def test_books(self):
|
|
||||||
url = reverse('view_books')
|
|
||||||
r = self.client.get(url)
|
r = self.client.get(url)
|
||||||
self.assertEqual(r.status_code, 200)
|
|
||||||
|
|
||||||
r = self.anonymous_client.get(url)
|
|
||||||
self.assertEqual(r.status_code, 302)
|
self.assertEqual(r.status_code, 302)
|
||||||
|
|
||||||
def test_plan(self):
|
r = self.client.get(r.url)
|
||||||
url = reverse('view_plan')
|
self.assertTemplateUsed(r, 'forms/edit_internal_recipe.html')
|
||||||
r = self.client.get(url)
|
|
||||||
self.assertEqual(r.status_code, 200)
|
|
||||||
|
|
||||||
r = self.anonymous_client.get(url)
|
url = reverse('edit_recipe', args=[external_recipe.pk])
|
||||||
|
r = self.client.get(url)
|
||||||
self.assertEqual(r.status_code, 302)
|
self.assertEqual(r.status_code, 302)
|
||||||
|
|
||||||
def test_shopping(self):
|
r = self.client.get(r.url)
|
||||||
url = reverse('view_shopping')
|
self.assertTemplateUsed(r, 'generic/edit_template.html')
|
||||||
r = self.client.get(url)
|
|
||||||
self.assertEqual(r.status_code, 200)
|
|
||||||
|
|
||||||
r = self.anonymous_client.get(url)
|
def test_convert_recipe(self):
|
||||||
|
url = reverse('edit_convert_recipe', args=[42])
|
||||||
|
r = self.client.get(url)
|
||||||
|
self.assertEqual(r.status_code, 404)
|
||||||
|
|
||||||
|
external_recipe = Recipe.objects.create(
|
||||||
|
name='Test',
|
||||||
|
internal=False,
|
||||||
|
created_by=auth.get_user(self.client)
|
||||||
|
)
|
||||||
|
|
||||||
|
url = reverse('edit_convert_recipe', args=[external_recipe.pk])
|
||||||
|
r = self.client.get(url)
|
||||||
self.assertEqual(r.status_code, 302)
|
self.assertEqual(r.status_code, 302)
|
||||||
|
|
||||||
|
recipe = Recipe.objects.get(pk=external_recipe.pk)
|
||||||
|
self.assertTrue(recipe.internal)
|
||||||
|
|
||||||
def test_internal_recipe_update(self):
|
def test_internal_recipe_update(self):
|
||||||
recipe = Recipe.objects.create(
|
recipe = Recipe.objects.create(
|
||||||
name='Test',
|
name='Test',
|
13
cookbook/tests/test_setup.py
Normal file
13
cookbook/tests/test_setup.py
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
from django.contrib import auth
|
||||||
|
from django.contrib.auth.models import User
|
||||||
|
from django.test import TestCase, Client
|
||||||
|
|
||||||
|
|
||||||
|
class TestBase(TestCase):
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
self.client = Client()
|
||||||
|
self.anonymous_client = Client()
|
||||||
|
self.client.force_login(User.objects.get_or_create(username='test')[0])
|
||||||
|
user = auth.get_user(self.client)
|
||||||
|
self.assertTrue(user.is_authenticated)
|
0
cookbook/tests/views/__init__.py
Normal file
0
cookbook/tests/views/__init__.py
Normal file
5
cookbook/tests/views/test_views.py
Normal file
5
cookbook/tests/views/test_views.py
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
from cookbook.tests.test_setup import TestBase
|
||||||
|
|
||||||
|
|
||||||
|
class TestViews(TestBase):
|
||||||
|
pass
|
37
cookbook/tests/views/test_views_general.py
Normal file
37
cookbook/tests/views/test_views_general.py
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
from django.urls import reverse
|
||||||
|
|
||||||
|
from cookbook.tests.views.test_views import TestViews
|
||||||
|
|
||||||
|
|
||||||
|
class TestViewsGeneral(TestViews):
|
||||||
|
|
||||||
|
def test_index(self):
|
||||||
|
r = self.client.get(reverse('index'))
|
||||||
|
self.assertEqual(r.status_code, 200)
|
||||||
|
|
||||||
|
r = self.anonymous_client.get(reverse('index'))
|
||||||
|
self.assertEqual(r.status_code, 200)
|
||||||
|
|
||||||
|
def test_books(self):
|
||||||
|
url = reverse('view_books')
|
||||||
|
r = self.client.get(url)
|
||||||
|
self.assertEqual(r.status_code, 200)
|
||||||
|
|
||||||
|
r = self.anonymous_client.get(url)
|
||||||
|
self.assertEqual(r.status_code, 302)
|
||||||
|
|
||||||
|
def test_plan(self):
|
||||||
|
url = reverse('view_plan')
|
||||||
|
r = self.client.get(url)
|
||||||
|
self.assertEqual(r.status_code, 200)
|
||||||
|
|
||||||
|
r = self.anonymous_client.get(url)
|
||||||
|
self.assertEqual(r.status_code, 302)
|
||||||
|
|
||||||
|
def test_shopping(self):
|
||||||
|
url = reverse('view_shopping')
|
||||||
|
r = self.client.get(url)
|
||||||
|
self.assertEqual(r.status_code, 200)
|
||||||
|
|
||||||
|
r = self.anonymous_client.get(url)
|
||||||
|
self.assertEqual(r.status_code, 302)
|
Reference in New Issue
Block a user