updated agenda unittests

This commit is contained in:
Oskar Hahn 2012-02-20 19:39:53 +01:00
parent 4e16c6639b
commit e85822ebc9

View File

@ -13,37 +13,19 @@
from django.test import TestCase
from django.test.client import Client
from django.contrib.auth.models import User
from django.db.models.query import EmptyQuerySet
from openslides.agenda.models import Item, ItemText
from openslides.agenda.api import get_active_item, is_summary, children_list
from projector.api import get_active_slide
from agenda.models import Item
from agenda.api import is_summary
class ItemTest(TestCase):
def setUp(self):
self.item1 = ItemText.objects.create(title='item1')
self.item2 = ItemText.objects.create(title='item2')
self.item3 = ItemText.objects.create(title='item1A', parent=self.item1)
self.item4 = ItemText.objects.create(title='item1Aa', parent=self.item3)
def testActive(self):
with self.assertRaises(Item.DoesNotExist):
get_active_item()
self.assertTrue(is_summary())
self.assertFalse(self.item4.active_parent)
self.assertFalse(self.item1.active)
self.item1.set_active()
self.assertTrue(self.item1.active)
self.assertTrue(self.item4.active_parent)
self.assertEqual(get_active_item().cast(), self.item1)
self.assertNotEqual(get_active_item().cast(), self.item2)
self.assertFalse(is_summary())
self.item2.set_active(summary=True)
self.assertFalse(self.item1.active)
self.assertTrue(is_summary())
self.item1 = Item.objects.create(title='item1')
self.item2 = Item.objects.create(title='item2')
self.item3 = Item.objects.create(title='item1A', parent=self.item1)
self.item4 = Item.objects.create(title='item1Aa', parent=self.item3)
def testClosed(self):
self.assertFalse(self.item1.closed)
@ -55,18 +37,18 @@ class ItemTest(TestCase):
self.assertFalse(self.item1.closed)
def testParents(self):
self.assertEqual(self.item1.parents, [])
self.assertTrue(self.item1 in self.item3.parents)
self.assertTrue(self.item1 in self.item4.parents)
self.assertFalse(self.item2 in self.item4.parents)
self.assertEqual(type(self.item1.get_ancestors()), EmptyQuerySet)
self.assertTrue(self.item1 in self.item3.get_ancestors())
self.assertTrue(self.item1 in self.item4.get_ancestors())
self.assertFalse(self.item2 in self.item4.get_ancestors())
def testChildren(self):
self.assertEqual(list(self.item2.children), [])
self.assertTrue(self.item3 in [item.cast() for item in self.item1.children])
self.assertFalse(self.item4 in [item.cast() for item in self.item1.children])
self.assertEqual(list(self.item2.get_children()), [])
self.assertTrue(self.item3 in self.item1.get_children())
self.assertFalse(self.item4 in self.item1.get_children())
l = children_list([self.item1, self.item2])
self.assertEqual(str(l), "[<ItemText: item1>, <Item: item1A>, <Item: item1Aa>, <ItemText: item2>]")
l = Item.objects.all()
self.assertEqual(str(l), "[<Item: item1>, <Item: item1A>, <Item: item1Aa>, <Item: item2>]")
def testForms(self):
for item in Item.objects.all():
@ -78,16 +60,11 @@ class ItemTest(TestCase):
self.assertEqual(initial['parent'], 0)
self.assertEqual(initial['weight'], item.weight)
item.edit_form()
def testtype(self):
self.assertEqual(self.item1.type, 'ItemText')
class ViewTest(TestCase):
def setUp(self):
self.item1 = ItemText.objects.create(title='item1')
self.item2 = ItemText.objects.create(title='item2')
self.item1 = Item.objects.create(title='item1')
self.item2 = Item.objects.create(title='item2')
self.refreshItems()
self.admin = User.objects.create_user('testadmin', '', 'default')
@ -129,11 +106,10 @@ class ViewTest(TestCase):
self.assertEqual(response.status_code, 302)
self.assertFalse(self.item2.active)
self.assertFalse(self.item1.active)
with self.assertRaises(Item.DoesNotExist):
get_active_item()
self.assertEqual(get_active_slide(only_sid=True), 'agenda_show')
response = c.get('/agenda/%d/activate/' % 10000)
self.assertEqual(response.status_code, 302)
self.assertEqual(response.status_code, 404)
self.assertFalse(self.item2.active)
self.assertFalse(self.item1.active)
@ -152,32 +128,27 @@ class ViewTest(TestCase):
response = c.get('/agenda/%d/open/' % 1000)
self.refreshItems()
self.assertEqual(response.status_code, 302)
self.assertEqual(response.status_code, 404)
def testEdit(self):
c = self.adminClient
response = c.get('/agenda/%d/edit/' % self.item1.id)
self.assertEqual(response.status_code, 200)
self.assertEqual(response.context['form'].instance, self.item1.cast())
response = c.get('/agenda/%d/edit/' % 1000)
self.assertEqual(response.status_code, 302)
self.assertEqual(response.status_code, 404)
data = {'title': 'newitem1', 'text': 'item1-text', 'weight':'0'}
response = c.post('/agenda/%d/edit/' % self.item1.id, data)
self.assertEqual(response.status_code, 302)
self.refreshItems()
self.assertEqual(self.item1.cast().title, 'newitem1')
self.assertEqual(self.item1.cast().text, 'item1-text')
self.assertEqual(self.item1.title, 'newitem1')
self.assertEqual(self.item1.text, 'item1-text')
data = {'title': '', 'text': 'item1-text', 'weight': '0'}
response = c.post('/agenda/%d/edit/' % self.item1.id, data)
self.assertEqual(response.status_code, 200)
self.refreshItems()
self.assertEqual(self.item1.cast().title, 'newitem1')
def testNew(self):
pass
self.assertEqual(self.item1.title, 'newitem1')