mirror of
https://github.com/ae-utbm/sith.git
synced 2026-07-02 12:48:35 +00:00
Merge pull request #1441 from ae-utbm/fix-barman-login
fix: session not properly updated on counter login
This commit is contained in:
@@ -886,6 +886,28 @@ class TestBarmanConnection(TestCase):
|
|||||||
)
|
)
|
||||||
assert response.status_code == 403
|
assert response.status_code == 403
|
||||||
|
|
||||||
|
def test_logout_then_login(self):
|
||||||
|
"""Test that the login is successful if it is after a previous logout.
|
||||||
|
|
||||||
|
This is a regression test for #1440
|
||||||
|
"""
|
||||||
|
self.client.post( # login
|
||||||
|
self.login_url, {"username": self.barman.username, "password": "plop"}
|
||||||
|
)
|
||||||
|
self.client.post( # logout
|
||||||
|
reverse("counter:logout", kwargs={"counter_id": self.counter.id}),
|
||||||
|
data={"user_id": self.barman.id},
|
||||||
|
)
|
||||||
|
response = self.client.post( # and re-login
|
||||||
|
self.login_url, {"username": self.barman.username, "password": "plop"}
|
||||||
|
)
|
||||||
|
assert response.status_code == 200
|
||||||
|
assert response.headers["HX-Redirect"] == self.detail_url
|
||||||
|
response = self.client.get(
|
||||||
|
self.detail_url, {"username": self.barman.username, "password": "plop"}
|
||||||
|
)
|
||||||
|
assert self.barman in response.wsgi_request.barmen
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.django_db
|
@pytest.mark.django_db
|
||||||
def test_barman_timeout(client: Client):
|
def test_barman_timeout(client: Client):
|
||||||
|
|||||||
@@ -61,6 +61,7 @@ class CounterLoginFragment(FragmentMixin, SingleObjectMixin, FormView):
|
|||||||
user = form.get_user()
|
user = form.get_user()
|
||||||
perm = self.object.permanencies.create(user=user, start=timezone.now())
|
perm = self.object.permanencies.create(user=user, start=timezone.now())
|
||||||
self.request.session.setdefault(SESSION_PERMANENCES_KEY, []).append(perm.id)
|
self.request.session.setdefault(SESSION_PERMANENCES_KEY, []).append(perm.id)
|
||||||
|
self.request.session.modified = True
|
||||||
self.success_url = reverse(
|
self.success_url = reverse(
|
||||||
"counter:details", kwargs={"counter_id": self.object.id}
|
"counter:details", kwargs={"counter_id": self.object.id}
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user