I’m currently trying to run unit test using GET and POST on specific urls when my client is logged in.
I set my user and login like this:
self.client = Client()
self.client.login(username="test_user", password="test") # Returns True
and then try to fetch for example:
response = self.client.get('/avantages/%s/register' % self.fst_benefit.id)
I get this error:
ValueError: invalid literal for int() with base 10: 'avantages/1'
Nota: error does not raise whenever I do not use login on my self.client
Any help?
I’ve found a solution to my own problem,
I wasn’t enforcing int values as ids in my urls.py. So I just added [\d] to my id refering patterns.
More, I used reverse in order to generate the login url. It perfectly works now, whatever url i’m trying to use when I’m logged in.