3
0
Fork 0
wuttaweb/tests/test_progress.py
Lance Edgar 4d0693862d fix: format all code with black
and from now on should not deviate from that...
2025-08-31 12:26:43 -05:00

65 lines
1.8 KiB
Python

# -*- coding: utf-8; -*-
from unittest import TestCase
from pyramid import testing
from beaker.session import Session as BeakerSession
from wuttjamaican.testing import ConfigTestCase
from wuttaweb import progress as mod
class TestGetBasicSession(TestCase):
def setUp(self):
self.request = testing.DummyRequest()
def test_basic(self):
session = mod.get_basic_session(self.request)
self.assertIsInstance(session, BeakerSession)
self.assertFalse(session.use_cookies)
class TestGetProgressSession(TestCase):
def setUp(self):
self.request = testing.DummyRequest()
def test_basic(self):
self.request.session.id = "mockid"
session = mod.get_progress_session(self.request, "foo")
self.assertIsInstance(session, BeakerSession)
self.assertEqual(session.id, "mockid.progress.foo")
class TestSessionProgress(ConfigTestCase):
def setUp(self):
self.setup_config()
self.request = testing.DummyRequest(wutta_config=self.config)
self.request.session.id = "mockid"
def test_error_url(self):
factory = mod.SessionProgress(self.request, "foo", success_url="/blart")
self.assertEqual(factory.error_url, "/blart")
def test_basic(self):
# sanity / coverage check
factory = mod.SessionProgress(self.request, "foo")
prog = factory("doing things", 2)
prog.update(1)
prog.update(2)
prog.handle_success()
def test_error(self):
# sanity / coverage check
factory = mod.SessionProgress(self.request, "foo")
prog = factory("doing things", 2)
prog.update(1)
try:
raise RuntimeError("omg")
except Exception as error:
prog.handle_error(error)