more robust home_page() FBV in apps.dashboard.views feat. individual item handling; .tests return OK given this new view
This commit is contained in:
@@ -12,10 +12,14 @@ class HomePageTest(TestCase):
|
||||
self.assertContains(response, '<input name="item-text"')
|
||||
|
||||
def test_can_save_a_POST_request(self):
|
||||
response = self.client.post('/', data={'item-text': 'A new dashboard item'})
|
||||
response = self.client.post('/', data={'item_text': 'A new dashboard item'})
|
||||
self.assertEqual(Item.objects.count(), 1)
|
||||
new_item = Item.objects.first()
|
||||
self.assertEqual(new_item.text, 'A new dashboard item')
|
||||
self.assertContains(response, 'A new dashboard item')
|
||||
self.assertTemplateUsed(response, 'apps/dashboard/home.html')
|
||||
|
||||
|
||||
class ItemModelTest(TestCase):
|
||||
def test_saving_and_retrieving_items(self):
|
||||
first_item = Item()
|
||||
@@ -33,3 +37,4 @@ class ItemModelTest(TestCase):
|
||||
second_saved_item = saved_items[1]
|
||||
self.assertEqual(first_saved_item.text, "The first (ever) dashboard item")
|
||||
self.assertEqual(second_saved_item.text, "A sequel somehow better than the first")
|
||||
|
||||
@@ -1,9 +1,14 @@
|
||||
from django.http import HttpResponse
|
||||
from django.shortcuts import render
|
||||
from .models import Item
|
||||
|
||||
def home_page(request):
|
||||
item = Item()
|
||||
item.text = request.POST.get('item_text', '')
|
||||
item.save()
|
||||
|
||||
return render(
|
||||
request,
|
||||
'apps/dashboard/home.html',
|
||||
{'new_item_text': request.POST.get('item-text', '')},
|
||||
{'new_item_text': request.POST.get('item_text', '')},
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user