Sto scrivendo alcuni test unitari per la mia applicazione flask e ho bisogno di simulare una richiesta da un utente connesso (sto usando login flask).test unità pallone: inviare i cookie dopo aver modificato la sessione
ho imparato here che per fare questo ho bisogno di modificare la sessione e aggiungere l'ID utente e un parametro _fresh
:
with app.test_client() as c:
with c.session_transaction() as sess:
sess['user_id'] = 'myuserid'
sess['_fresh'] = True
resp = c.get('/someurl')
mio problema è che ho bisogno di inviare alcuni altri biscotti insieme alla richiesta. Qualcosa come
headers = Headers({'Cookie':'MYCOOKIE=cookie_value;'})
with app.test_client() as c:
with c.session_transaction() as sess:
sess['user_id'] = 'myuserid'
sess['_fresh'] = True
resp = c.get('/someurl', headers=headers)
ma quando eseguo questa richiesta la sessione "scompare" insieme alle variabili ho impostato.
Penso che (e qualcun altro su IRC abbia la stessa idea) è perché la mia definizione esplicita dell'intestazione del cookie sovrascrive quella contenente il cookie session
.
La mia domanda è: c'è un modo per impostare il mio cookie senza rimuovere lo session
?
In caso contrario, esiste un modo per estrarre il cookie session
dopo aver modificato la sessione in modo che sia possibile aggiungerla manualmente all'elenco di cookie nell'oggetto headers
?
Se ha funzionato dovresti accettarlo come risposta :-) –
@SeanVieira Devo aspettare 2 giorni prima di poterlo fare :-) –