diff options
| author | Michael Merickel <michael@merickel.org> | 2019-09-30 15:38:27 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-09-30 15:38:27 -0500 |
| commit | 502149ae3694bcb8eefb42974e84a5bf603aaebb (patch) | |
| tree | b786809fbd15e69b5ecfcc010f1e0ff83b764bc7 /tests/test_viewderivers.py | |
| parent | f63d45aa7561098f5588eb93b6c3cde126c5e711 (diff) | |
| parent | 070642056a2863c5da20cbc28626f4e8e1c49cdb (diff) | |
| download | pyramid-502149ae3694bcb8eefb42974e84a5bf603aaebb.tar.gz pyramid-502149ae3694bcb8eefb42974e84a5bf603aaebb.tar.bz2 pyramid-502149ae3694bcb8eefb42974e84a5bf603aaebb.zip | |
Merge pull request #3512 from luhn/csrf-allow-no-origin
Add allow_no_origin option to CSRF
Diffstat (limited to 'tests/test_viewderivers.py')
| -rw-r--r-- | tests/test_viewderivers.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/test_viewderivers.py b/tests/test_viewderivers.py index f01cb490e..3ca5f8534 100644 --- a/tests/test_viewderivers.py +++ b/tests/test_viewderivers.py @@ -1504,6 +1504,27 @@ class TestDeriveView(unittest.TestCase): result = view(None, request) self.assertTrue(result is response) + def test_csrf_view_allow_no_origin(self): + response = DummyResponse() + + def inner_view(request): + return response + + self.config.set_default_csrf_options( + require_csrf=True, allow_no_origin=True + ) + request = self._makeRequest() + request.scheme = "https" + request.domain = "example.com" + request.host_port = "443" + request.referrer = None + request.method = 'POST' + request.session = DummySession({'csrf_token': 'foo'}) + request.POST = {'csrf_token': 'foo'} + view = self.config._derive_view(inner_view, require_csrf=True) + result = view(None, request) + self.assertTrue(result is response) + def test_csrf_view_fails_on_bad_PUT_header(self): from pyramid.exceptions import BadCSRFToken |
