コード例 #1
0
 def setUp(self):
     self.env = {
         'REQUEST_URI': '/test/route',
         'REQUEST_METHOD': 'POST',
     }
     zoom.system.providers = []
     request = Request(self.env)
     request.site = Site(request)
     request.site.db = setup_test()
     request.session = Session(request)
     reset_csrf_token(request.session)  # bind a token
     self.request = request
コード例 #2
0
 def setUp(self):
     self.env = {
         'REQUEST_URI': '/test/route',
         'REQUEST_METHOD': 'POST',
     }
     request = Request(self.env)
     request.site = Site(request)
     request.site.db = setup_test()
     request.session = Session(request)
     from zoom.forms import csrf_token
     csrf_token(request.session)  # bind a token
     self.request = request
コード例 #3
0
ファイル: test_request.py プロジェクト: zodman/ZoomFoundry
 def test_delete(self):
     self.env['REQUEST_METHOD'] = 'DELETE'
     self.env['CONTENT_TYPE'] = 'application/x-www-form-urlencoded'
     self.set_payload('parameter=value&also=another')
     request = Request(self.env)
     result = {'also': 'another', 'parameter': 'value'}
     self.assertEqual(request.data, result)
コード例 #4
0
ファイル: server.py プロジェクト: zodman/ZoomFoundry
def debug(environ, start_response):
    """Configuration Debugging App"""
    request = Request(environ)
    response = middleware.handle(request, middleware.DEBUGGING_HANDLERS)
    status, headers, body = response.as_wsgi()
    start_response(status, headers)
    return [body]
コード例 #5
0
ファイル: test_request.py プロジェクト: zodman/ZoomFoundry
 def test_delete_no_body(self):
     self.env['REQUEST_METHOD'] = 'DELETE'
     self.env['CONTENT_TYPE'] = 'application/x-www-form-urlencoded'
     self.set_payload('')
     request = Request(self.env)
     result = {}
     self.assertEqual(request.data, result)
コード例 #6
0
ファイル: test_request.py プロジェクト: brettgoss/datazoomer
 def test_expired_subject_cookie(self):
     # if the subject cookie has expired the browser does not send it
     # so the request module makes a new subject token.
     env = {}
     request = Request(env)
     self.assertNotEqual(request.subject, 'mycookie')
     assert len(request.subject) == 32
コード例 #7
0
ファイル: test_request.py プロジェクト: zodman/ZoomFoundry
 def test_get_with_indexed_values(self):
     env = dict(REQUEST_METHOD='GET',
                QUERY_STRING='parameter[1]=one&parameter[2]=two')
     request = Request(env)
     expected = {
         'parameter': ['two', 'one'],
     }
     self.assertEqual(sorted(request.data), sorted(expected))
コード例 #8
0
 def __call__(self, environ, start_response):
     reset_modules()
     start_time = timer()
     request = Request(environ, self.instance, start_time)
     response = middleware.handle(request, self.handlers)
     status, headers, content = response.as_wsgi()
     start_response(status, headers)
     return [content]
コード例 #9
0
ファイル: server.py プロジェクト: zodman/ZoomFoundry
def run_as_cgi(environ=None, instance=None):
    """Run Zoom as a CGI script"""
    env = environ or os.environ
    path = instance or os.path.realpath('..')
    start_time = timer()
    request = Request(env, path, start_time)
    response = middleware.handle(request)
    result = response.render()
    sys.stdout.buffer.write(result)
コード例 #10
0
ファイル: test_request.py プロジェクト: brettgoss/datazoomer
    def test_subject_cookie(self):
        # the subject token is extracted from the cookie and
        # made available as part of the request.
        cookie = make_cookie()
        add_value(cookie, SUBJECT_COOKIE_NAME, 'mycookie', 60, True)

        env = {'HTTP_COOKIE': get_value(cookie)}
        request = Request(env)
        self.assertEqual(request.subject, 'mycookie')
コード例 #11
0
 def test_post_query_string(self):
     payload = 'parameter=value&also=another'
     body = io.BytesIO()
     body.write(payload.encode('utf-8'))
     body.seek(0)
     request = self.get_post_request(body)
     self.env['REQUEST_METHOD'] = 'POST'
     self.env['QUERY_STRING'] = 'name=joe&age=20'
     request = Request(self.env)
     value =  {'age': '20', 'also': 'another', 'name': 'joe', 'parameter': 'value'}
     self.assertEqual(request.data, value)
コード例 #12
0
ファイル: test_middleware.py プロジェクト: zodman/ZoomFoundry
 def setUp(self):
     self.env = {
         'REQUEST_URI': '/test/route',
         'REQUEST_METHOD': 'POST',
     }
     zoom.system.request = request = Request(self.env)
     request.site = Site(request)
     request.site.db = setup_test()
     request.session = Session(request)
     zoom.forms.form_for('test')  # trigger crsf token creation
     self.request = request
コード例 #13
0
ファイル: test_mail.py プロジェクト: sean-hayes/zoom
 def test_post(self, _):
     site = Site(Request({}))
     site.name = 'Testco'
     data = []
     self.assertEqual(
         mail.post(data.append, ('Testco', '*****@*****.**'),
                   '*****@*****.**', 'The Subject', 'The Body'), None)
     self.assertEqual(data, [{
         'attachments': "[]",
         'body': 'The Body',
         'created': mocked_time(),
         'style': 'plain',
         'status': 'waiting',
         'subject': 'The Subject',
         'recipients': '"*****@*****.**"',
         'sender': '["Testco", "*****@*****.**"]'
     }])
コード例 #14
0
ファイル: test_request.py プロジェクト: zodman/ZoomFoundry
 def get_post_request(self, body):
     sys.stdin = body
     return Request(self.env)
コード例 #15
0
ファイル: test_mail.py プロジェクト: sean-hayes/zoom
 def test_get_default_sender(self):
     site = Site(Request(dict(SERVER_NAME='default'), instance='default'))
     self.assertEqual(mail.get_default_sender(site),
                      ('ZOOM Support', '*****@*****.**'))
コード例 #16
0
ファイル: test_request.py プロジェクト: zodman/ZoomFoundry
 def test_get_with_duplicates(self):
     env = dict(REQUEST_METHOD='GET',
                QUERY_STRING='parameter=one&parameter=two')
     request = Request(env)
     expected = {'parameter': ['one', 'two']}
     self.assertEqual(request.data, expected)
コード例 #17
0
ファイル: test_request.py プロジェクト: zodman/ZoomFoundry
 def test_get(self):
     self.env['REQUEST_METHOD'] = 'GET'
     self.env['QUERY_STRING'] = 'parameter=value&also=another'
     request = Request(self.env)
     result = {'also': 'another', 'parameter': 'value'}
     self.assertEqual(request.data, result)
コード例 #18
0
ファイル: test_request.py プロジェクト: zodman/ZoomFoundry
 def test_route(self):
     request = Request(self.env)
     self.assertEqual(request.route, ['test', 'route'])
コード例 #19
0
ファイル: test_request.py プロジェクト: zodman/ZoomFoundry
 def test_get_query_string(self):
     self.env['REQUEST_METHOD'] = 'GET'
     self.env['QUERY_STRING'] = 'name=joe&age=20'
     request = Request(self.env)
     self.assertEqual(request.data, {'name': 'joe', 'age': '20'})
コード例 #20
0
ファイル: test_request.py プロジェクト: zodman/ZoomFoundry
 def test_server_type(self):
     request = Request(self.env)
     self.assertEqual(request.module, self.server_type)
コード例 #21
0
ファイル: test_request.py プロジェクト: zodman/ZoomFoundry
 def get_post_request(self, body):
     self.env['wsgi.input'] = body
     return Request(self.env)
コード例 #22
0
ファイル: test_session.py プロジェクト: robinsax/zoom
 def setUp(self):
     env = {}
     self.request = Request(env)
     self.request.site = Site(self.request)
     self.request.site.db = setup_test()