def test_pipeline_exits(self): request = Request({}) request2 = Request({}) pipeline = Pipeline(request, request2).through([PipeTestOne, PipeTestBreak]) self.assertTrue(request.one == 1) with self.assertRaises(AttributeError): self.assertTrue(request.two == 2)
def test_pipeline_sets_attributes(self): request = Request({}) request2 = Request({}) pipeline = Pipeline(request, request2).through([PipeTestOne, PipeTestTwo]) self.assertTrue(request.one == 1) self.assertTrue(request.two == 2)
def test_request_contains(self): request = Request(generate_wsgi(path="/test")) self.assertTrue(request.contains("/test")) request = Request(generate_wsgi(path="/test/user")) self.assertTrue(request.contains("/test/*")) request = Request(generate_wsgi(path="/test/admin/user")) self.assertTrue(request.contains("/test/*/user")) request = Request(generate_wsgi(path="/test/admin/user")) self.assertTrue(request.contains("*"))
def test_gets_input_and_query_with_get_request(self): app = App() wsgi_environ = generate_wsgi() wsgi_environ['QUERY_STRING'] = 'param=1¶m=2¶m=3&foo=bar&q=yes' wsgi_environ['wsgi.input'] = { 'param': 'hey', 'foo': [9, 8, 7, 6], 'bar': 'baz' } wsgi_environ['REQUEST_METHOD'] = 'GET' route_class = Route(wsgi_environ) request_class = Request(wsgi_environ) app.bind('Request', request_class) app.bind('Route', route_class) request = app.make('Request').load_app(app) self.assertEqual(request.query('param'), '1') self.assertEqual(request.all_query()['param'], ['1', '2', '3']) self.assertEqual(request.query('foo'), 'bar') self.assertEqual(request.query('param', multi=True), ['1', '2', '3']) self.assertEqual(request.query('not-exist', default=2), 2) self.assertEqual(request.query('not-exist', default=2, multi=True), 2) self.assertEqual(request.query('q', default='no'), 'yes') self.assertEqual(request.input('foo'), 'bar') self.assertEqual(request.input('param'), '1') self.assertEqual(request.input('q', default='no'), 'yes') self.assertEqual(request.input('bar', default='default'), 'default')
def test_request_gets_all_headers(self): app = App() app.bind('Request', Request(wsgi_request)) request = app.make('Request').load_app(app) request.header('TEST1', 'set_this_item') self.assertEqual(request.get_headers(), [('TEST1', 'set_this_item')])
def test_gets_input_and_query_with_non_get_request(self): app = App() for method in ['POST', 'PUT', 'DELETE']: wsgi_environ = generate_wsgi() wsgi_environ['REQUEST_METHOD'] = method wsgi_environ[ 'QUERY_STRING'] = 'param=1¶m=2¶m=3&foo=bar&q=yes' wsgi_environ['wsgi.input'] = MockWsgiInput( '{"param": "hey", "foo": [9, 8, 7, 6], "bar": "baz"}') wsgi_environ['CONTENT_TYPE'] = 'application/json' route_class = Route(wsgi_environ) request_class = Request(wsgi_environ) app.bind('Request', request_class) app.bind('Route', route_class) request = app.make('Request').load_app(app) self.assertEqual(request.input('foo'), [9, 8, 7, 6]) self.assertEqual(request.input('param'), 'hey') self.assertEqual(request.input('not-exist', default=2), 2) self.assertEqual(request.input('q', default='default'), 'default') self.assertEqual(request.input('bar', default='default'), 'baz') self.assertEqual(request.query('foo'), 'bar') self.assertEqual(request.query('param'), '1') self.assertEqual(request.query('param', multi=True), ['1', '2', '3']) self.assertEqual(request.query('not-exist', default=2), 2) self.assertEqual(request.query('not-exist', default=2, multi=True), 2) self.assertEqual(request.query('q', default='default'), 'yes')
def setUp(self): self.app = App() self.request = Request(wsgi_request.copy()).key( 'NCTpkICMlTXie5te9nJniMj9aVbPM6lsjeq5iDZ0dqY=').load_app(self.app) self.app.bind('Request', self.request) self.response = Response(self.app) self.app.simple(Response)
def setUp(self): self.request = Request(generate_wsgi()) self.middleware = MaintenanceModeMiddleware(self.request) down_path = os.path.join(application.BASE_DIRECTORY, 'bootstrap/down') down = os.path.exists(down_path) if down: os.remove(down_path)
def test_can_pass_variables(self): app = App() req = Request() app.bind('Request', req) obj = app.resolve(self._test_resolves_variables, 'test1', 'test2') self.assertEqual(obj[0], 'test1') self.assertEqual(obj[1], req) self.assertEqual(obj[2], 'test2')
def test_request_sets_request_method(self): wsgi = generate_wsgi() wsgi['QUERY_STRING'] = '__method=PUT' request = Request(wsgi) assert request.has('__method') self.assertEqual(request.input('__method'), 'PUT') self.assertEqual(request.get_request_method(), 'PUT')
def test_can_call_container_with_annotations_from_variable(self): request = Request(generate_wsgi()) self.container.bind('Request', request) self.container.bind('Get', Get().route('url', None)) self.assertEqual(self.container.resolve(ContainerTest().testboot), self.container.make('Request'))
def test_hidden_form_request_method_changes_request_method(self): app = App() wsgi_request['POST_DATA'] = '__method=PUT' request_class = Request(wsgi_request) app.bind('Request', request_class) request = app.make('Request').load_app(app) self.assertEqual(request.environ['REQUEST_METHOD'], 'PUT')
def test_redirect_route(self): route = Redirect('/test1', '/test2') request = Request(generate_wsgi()) route.load_request(request) request.load_app(App()) route.get_response() self.assertTrue(request.is_status(302)) self.assertEqual(request.redirect_url, '/test2')
def test_redirect_can_use_301(self): request = Request(generate_wsgi()) route = Redirect('/test1', '/test3', status=301) route.load_request(request) request.load_app(App()) route.get_response() self.assertTrue(request.is_status(301)) self.assertEqual(request.redirect_url, '/test3')
def test_get_json_input(self): json_wsgi = wsgi_request json_wsgi['REQUEST_METHOD'] = 'POST' json_wsgi['CONTENT_TYPE'] = 'application/json' json_wsgi['POST_DATA'] = '' json_wsgi['wsgi.input'] = MockWsgiInput('{"id": 1, "test": "testing"}') Route(json_wsgi) request_obj = Request(json_wsgi) self.assertIsInstance(request_obj.request_variables, dict) self.assertEqual(request_obj.input('id'), 1) self.assertEqual(request_obj.input('test'), 'testing')
def setUp(self): super().setUp() self.container = App() self.app = self.container self.app.bind('Container', self.app) view = View(self.container) self.request = Request(generate_wsgi()).load_environ(generate_wsgi()) self.request.key(application.KEY) self.app.bind('Request', self.request) self.container.bind('View', view.render) self.container.bind('ViewClass', view) self.auth = Guard(self.app) self.auth.register_guard('web', WebGuard) self.auth.guard('web').register_driver('jwt', AuthJwtDriver) self.auth.set('web') self.app.swap(Auth, self.auth) self.request.load_app(self.app)
def test_gets_input_with_all_request_methods(self): app = App() wsgi_request['QUERY_STRING'] = 'hey=test' request_class = Request(wsgi_request) app.bind('Request', request_class) request = app.make('Request').load_app(app) request.environ['REQUEST_METHOD'] = 'GET' self.assertEqual(request.input('hey'), 'test') request.environ['REQUEST_METHOD'] = 'POST' self.assertEqual(request.input('hey'), 'test') request.environ['REQUEST_METHOD'] = 'PUT' self.assertEqual(request.input('hey'), 'test') request.environ['REQUEST_METHOD'] = 'PATCH' self.assertEqual(request.input('hey'), 'test') request.environ['REQUEST_METHOD'] = 'DELETE' self.assertEqual(request.input('hey'), 'test')
def test_list_as_root_payload_reset_between_requests(self): app = App() wsgi_environ = generate_wsgi() wsgi_environ['REQUEST_METHOD'] = 'POST' wsgi_environ['CONTENT_TYPE'] = 'application/json' route_class = Route() request_class = Request() app.bind('Request', request_class) app.bind('Route', route_class) route = app.make('Route') request = app.make('Request').load_app(app) wsgi_environ['wsgi.input'] = MockWsgiInput('[1, 2]') route.load_environ(wsgi_environ) request.load_environ(wsgi_environ) self.assertEqual(request.all(), [1, 2]) wsgi_environ['wsgi.input'] = MockWsgiInput('{"key": "val"}') route.load_environ(wsgi_environ) request.load_environ(wsgi_environ) self.assertEqual(request.all(), {"key": "val"})
def setUp(self): self.route = Route(generate_wsgi()) self.request = Request(generate_wsgi())
def setUp(self): self.app = App() self.view = View(self.app) self.request = Request(generate_wsgi()).load_app(self.app) self.provider = HelpersProvider() self.provider.load_app(self.app).boot(self.view, self.request)
def test_instead_of_with_method(self): request = Request() InsteadOf(request, 'user')._return(MockUser) self.assertIsInstance(request.user(), MockUser)
def test_instead_of_attribute(self): request = Request() InsteadOf(request, 'user')._return('awesome') self.assertEqual(request.user, 'awesome')
def test_can_call_container_with_self_parameter(self): self.container.bind('Request', Request({})) self.container.bind('Get', Get()) self.assertEqual(self.container.resolve(ContainerTest().boot), self.container.make('Request'))
def setUp(self): super().setUp() self.request = Request(generate_wsgi()) self.middleware = SecureHeadersMiddleware(self.request) self.container.bind('Request', self.request.load_app(self.container)) self.request = self.container.make('Request')
def setUp(self): self.app = App() self.request = Request(wsgi_request) self.app.bind('Request', self.request)
def setUp(self): self.request = Request(generate_wsgi({"PATH_INFO": "/test"}))
def test_autoload_throws_exception_when_binding_key_that_already_exists( self): self.app.bind('Request', Request(None)) with self.assertRaises(AutoloadContainerOverwrite): Autoload(self.app).load(['app/http/test_controllers'])
def setUp(self): self.secret_key = 'pK1tLuZA8-upZGz-NiSCP_UVt-fxpxd796TaG6-dp8Y=' self.request = Request(generate_wsgi()).key(self.secret_key)
from src.masonite.app import App from src.masonite.request import Request from src.masonite.testing import generate_wsgi import unittest REQUEST = Request({}).load_environ(generate_wsgi()) class MockMail: def __init__(self, request: Request): self.request = request class TestApp(unittest.TestCase): def setUp(self): self.app = App() def test_app_binds(self): self.app.bind('test1', object) self.app.bind('test2', object) self.assertEqual(self.app.providers, {'test1': object, 'test2': object}) def test_app_makes(self): self.app.bind('Request', REQUEST) self.assertEqual(self.app.make('Request').cookies, []) def test_app_makes_and_resolves(self): self.app.bind('Request', REQUEST) self.app.bind('MockMail', MockMail)
def setUp(self): super().setUp() self.request = Request(generate_wsgi(path="/test"))