Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I send cookies with request when testing Flask applications through nosetests?

I'm having some trouble sending a cookie with my test request. I've tried something like this:

# First request to log in, retrieve cookie from response
response = self.app_client.post('/users/login', query_string={ data.. )
cookie = response.headers['Set-Cookie'] # Contains: user_hash=3f305370487731289a7f9bd8d379a1c2; Domain=.flowdev.com; Path=/

# Second request that requires the cookie
response = self.app_client.get('/users/', headers={'Set-Cookie': cookie})
# Here i print out request.cookies.get('user_hash') inside the app, which contains None

I suppose it's not this simple, but I don't know how to build the cookie in the correct way here. How should the second request be created so it sends along the cookie in the header?

Thanks!

like image 807
moodh Avatar asked Feb 15 '13 08:02

moodh


2 Answers

You can also use self.app_client.set_cookie(domain, cookie_name, cookie_value) before making the request.

like image 194
David C. Avatar answered Sep 22 '22 05:09

David C.


God I feel so stupid, it was a simple switch to Cookie from Get-Cookie. I was 100% sure I had tried that alot before but I guess when something else was wrong. Either way I'll mark this as correct but feel free to remove this question if necessary. =)

like image 44
moodh Avatar answered Sep 22 '22 05:09

moodh