I am testing my view using the Client(), and I am having trouble
retrieving a variable that is in a try and except block. It is not
returning the posted item in the block, but instead always returning
the excepted data.
Here is the snippet I am trying to test in my view.py:
"""
allchecks = Checks.objects.all()
datagroups = []
for i in allchecks:
i.datagroup
if not i.datagroup in datagroups:
datagroups += ['%s' % i.datagroup]
try:
data = request.POST['datagroup']
except:
data=""
if data:
checkslist = Checks.objects.filter(datagroup=data)
else:
checkslist = []
"""
In my rendered template I have a filter input box which contains
everything stored in datagroups. What I doing here is posting the
selected filter in datagroups to display the results from my Checks
table.
This all works fine in practice but when I am testing it using
Django's Client(), it never returns data as the posted datagroup but
rather returns the excepted data="".
This is what I have in my test.py:
"""
class checksearchTests(TestCase):
fixtures = ['testdata/my_text_fixture.json']
def setUp(self):
self.client = Client()
#login user to perform following tests
self.client.login(username='auser', password='apassword')
response = self.client.get('/lib/project/7/checksearch/')
self.assertEqual(response.status_code, 200)
self.assertEqual(response.template[0].name, 'allsearch.html')
self.failUnless('testtrial1' in response.content)
def test_post_datagroup_search_ALC(self):
dg='ALC'
post_data = {'data': dg}
postresponse = self.client.post('/lib/project/7/checksearch/',
post_data)
response = self.client.get('/lib/project/7/checksearch/')
self.assertEqual(response.status_code, 200)
self.assertEqual(response.template[0].name, 'allsearch.html')
self.failUnless('Results for datagroup: ALC' in
response.content)
"""
Its failing on "self.failUnless('Results for datagroup: ALC' in
response.content)" because the posted data has not been rendered, so
instead its rendering dg="".
Anyidea why this is? Is it the way I have written my function?
Any help is received with thanks.
Tony.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Django users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---