diff options
Diffstat (limited to 'test/test_exc.py')
-rw-r--r-- | test/test_exc.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/test/test_exc.py b/test/test_exc.py new file mode 100644 index 0000000..fca38dc --- /dev/null +++ b/test/test_exc.py @@ -0,0 +1,30 @@ +import bottle +from .tools import ServerTestBase + +class TestError(Exception): + pass + +class TestAppException(ServerTestBase): + + def test_no_exc(self): + @bottle.route('/') + def test(): return 'test' + self.assertBody('test', '/') + + def test_memory_error(self): + @bottle.route('/') + def test(): raise MemoryError + self.assertRaises(MemoryError) + + def test_other_error(self): + @bottle.route('/') + def test(): raise TestError + self.assertRaises(TestError) + + def test_noncatched_error(self): + @bottle.route('/') + def test(): raise TestError + bottle.request.environ['exc_info'] = None + bottle.catchall = False + self.assertStatus(500, '/') + self.assertInBody('TestError') |