I have this test script for uploading file
with open('_material/content.xlsx','rb') as fp:
response = self.client.login(username="[email protected]", password="qwpo1209")
response = self.client.post('/cms/content/up',
{'name': 'test', 'content_file': fp,"is_all":"True"})
self.assertEqual(response.status_code,302) # it shows ok
#then next, how can I follow the redirect and test the page??
self.assertContains(response, "success!")
It returns the redirect 302 but I want to follow the redirect and nect check.
Because there comes the message such as success!
Is it possible?
CodePudding user response:
You can use follow=True
to follow the redirect in a .post(…)
call [Django-doc], so:
response = self.client.post(
'/cms/content/up',
{'name': 'test', 'content_file': fp, 'is_all': 'True'},
follow=True
)
as is specified in the documentation:
If you set follow to
True
the client will follow any redirects and aredirect_chain
attribute will be set in the response object containing tuples of the intermediate urls and status codes.