def test_install_without_package_name(self): request = DummyRequest() request.context = DummyResource() request.params['package_name'] = None response = CatalogItemViews(request).install() self.assertEqual(response.status_int, 500)
def test_get(self): fake_response = {'project': 'globalapi'} request = DummyRequest() request.context = DummyResource() response = home_views.HomeViews(request).get() self.assertEqual(response.json_body, fake_response)
def test_get(self): fake_response = {'project': 'localapi'} request = DummyRequest() request.context = DummyResource() response = HomeViews(request).get() self.assertEqual(response, fake_response)
def test_forbidden_view_without_user_returns_redirect_to_login(): from paildocket.views.root import forbidden request = DummyRequest() request.user = False request.context = DummyResource() response = forbidden(request) assert urlparse(response.location).path == '/login'
def dummy_request(self): request = DummyRequest() request.context = DummyResource() request.userdb = self.userdb request.db = self.db request.registry.settings = self.settings return request
def test_index_exception(self, mock_getlist): error_message = 'GET PACKAGE LIST EXCEPTION' mock_getlist.side_effect = Exception(error_message) request = DummyRequest() request.context = DummyResource() response = CatalogViews(request).index() self.assertEqual(response['status'], 500) self.assertTrue(error_message in response['errors'])
def test_it_not_submitted(self): user = User(name='foo', role='editor') page = Page(name='abc', data='hello', creator=user) self.dbsession.add_all([page, user]) request = DummyRequest(dbsession=self.dbsession) request.context = PageResource(page) info = PageAddEditView(request)() assert info['context'].page == page
def test_upload_no_product_id(self): request = DummyRequest() request.context = DummyResource() view = package_views.PackagesViews(request) response = view.upload() self.assertTrue(response.json_body is not None) result = response.json_body self.assertTrue(result[u'errors'])
def test_index_404(self, mock_getlist): mock_package_list = {'status': 404} mock_getlist.return_value = mock_package_list request = DummyRequest() request.context = DummyResource() request.matchdict['product_id'] = 'dummy' view = package_views.PackagesViews(request) response = view.index() self.assertIs(type(response), httpexceptions.HTTPNotFound)
def test_install(self, mock_install_package): fake_response = HTTPOk mock_install_package.return_value = fake_response request = DummyRequest() request.context = DummyResource() request.params['package_name'] = 'dummy' response = CatalogItemViews(request).install() self.assertEqual(response, fake_response)
def test_index_returns_404(self, mock_package_list): fake_response = {'status': 404, 'packages': [{}]} mock_package_list.return_value = fake_response request = DummyRequest() request.context = DummyResource() response = CatalogViews(request).index() self.assertEqual(type(response), dict) self.assertEqual(type(response['packages']), list) self.assertEqual(response['status'], 404)
def test_resource_form_traversal(): result = traverse(_root, "/rest/schools/%s/@view" % SCHOOL_ID) context = result['context'] request = DummyRequest(params={}) request.context = context from webapp.views.rest import json_rest_get_f result = json_rest_get_f(context, request) assert(result['id'] == SCHOOL_ID)
def test_get_404(self, mock_get_package): request = DummyRequest() request.context = DummyResource() request.matchdict['product_id'] = 'dummy' request.matchdict['package_id'] = 'test' mock_get_package_result = { 'status': 404, } mock_get_package.return_value = mock_get_package_result view = package_views.PackageViews(request) response = view.get() self.assertIs(type(response), httpexceptions.HTTPNotFound)
def test_it_submitted(self): request = DummyRequest( { 'submit': True, 'name': 'AnotherPage', 'body': 'Hello yo!' }, dbsession=self.dbsession) request.user = User(name='foo', role='editor') request.context = PageResource(Page(name='AnotherPage')) PageAddEditView(request)() page = self.dbsession.query(Page).filter_by(name='AnotherPage').one() assert page.data == 'Hello yo!'
def test_index(self, mock_getlist): mock_package_list = {'status': 200, 'packages': [{'pkg1': 'test'}]} mock_getlist.return_value = mock_package_list request = DummyRequest() request.context = DummyResource() request.matchdict['product_id'] = 'dummy' request.params['filters'] = 'keyword' view = package_views.PackagesViews(request) response = view.index() self.assertEqual(type(response), dict) self.assertEqual(type(response['packages']), list) self.assertEqual(response['status'], 200) self.assertEqual(response, mock_package_list)
def test_index_500(self, mock_getlist): error_message = 'GET PACKAGE LIST EXCEPTION' mock_getlist.side_effect = \ httpexceptions.HTTPInternalServerError(explanation=error_message, detail=error_message) request = DummyRequest() request.context = DummyResource() request.matchdict['product_id'] = 'dummy' view = package_views.PackagesViews(request) response = view.index() self.assertEqual(response.status_code, 500) self.assertTrue(error_message in response.message) self.assertTrue(error_message in response.detail) self.assertTrue(len(response.json_body['errors']) > 0) self.assertIs(type(response), httpexceptions.HTTPInternalServerError)
def test_upload(self, mock_save, mock_response): fileupload = mock.MagicMock() fileupload.filename = 'filename on upload' mock_response = {'status': 201} mock_save.return_value = mock_response request = DummyRequest() request.context = DummyResource() request.matchdict['product_id'] = 'dummy' request.params = {'fileupload': fileupload} view = package_views.PackagesViews(request) response = view.upload() mock_save.assert_called_with(fileupload.filename, fileupload) self.assertTrue(mock_save.called) logger.debug(response) self.assertEqual(response.status_code, mock_response['status']) self.assertIs(type(response), httpexceptions.HTTPCreated)
def test_it_submitted(self): user = User(name='foo', role='editor') page = Page(name='abc', data='hello', creator=user) self.dbsession.add_all([page, user]) self.dbsession.flush() request = DummyRequest( { 'submit': True, 'body': 'Hello yo!', 'name': 'abc' }, dbsession=self.dbsession) request.context = PageResource(page) response = PageAddEditView(request)() assert response.location == 'http://example.com/abc' assert page.data == 'Hello yo!'
def test_upload_500(self, mock_save, mock_response): fileupload = mock.MagicMock() fileupload.filename = 'filename on upload' error_message = "SAVE PACKAGE EXCEPTION" mock_save.side_effect = Exception(error_message) request = DummyRequest() request.context = DummyResource() request.matchdict['product_id'] = 'dummy' request.params = {'fileupload': fileupload} view = package_views.PackagesViews(request) response = view.upload() self.assertEqual(response.status_code, 500) self.assertTrue(error_message in response.message) self.assertTrue(error_message in response.detail) self.assertTrue(len(response.json_body['errors']) > 0) self.assertIs(type(response), httpexceptions.HTTPInternalServerError)
def test_get_500(self, mock_get_package): request = DummyRequest() request.context = DummyResource() request.matchdict['product_id'] = 'dummy' request.matchdict['package_id'] = 'test' mock_get_package_result = { 'status': 404, } error_message = "GET PACKAGE EXCEPTION" mock_get_package.side_effect = Exception(error_message) view = package_views.PackageViews(request) response = view.get() self.assertEqual(response.status_code, 500) self.assertTrue(error_message in response.message) self.assertTrue(error_message in response.detail) self.assertTrue(len(response.json_body['errors']) > 0) self.assertIs(type(response), httpexceptions.HTTPInternalServerError)
def dummy_request(self, cookies={}): request = DummyRequest() request.context = DummyResource() request.userdb = self.userdb request.userdb_new = self.userdb_new request.db = self.db request.registry.settings = self.settings def propagate_user_changes(user): """ Make sure there is a request.context.propagate_user_changes in testing too. """ logger.debug('FREDRIK: Testing dummy_request.context propagate_user_changes') return self.request.amrelay.request_sync(user) request.context.propagate_user_changes = propagate_user_changes return request
def test_it(self): # add a page to the db user = User(name='foo', role='editor') page = Page(name='IDoExist', data='Hello CruelWorld IDoExist', creator=user) self.dbsession.add_all([page, user]) # create a request asking for the page we've created request = DummyRequest(dbsession=self.dbsession) request.context = PageResource(page) # call the view we're testing and check its behavior info = PageDisplayView(request)() assert info['page'] == page assert info['content'] == ( 'Hello' ' <a href="http://example.com/add_page/CruelWorld">CruelWorld</a>' ' <a href="http://example.com/IDoExist">' 'IDoExist</a>') assert info['edit_url'] == 'http://example.com/IDoExist/edit_page'
def dummy_request(self, cookies={}): request = DummyRequest() request.context = DummyResource() request.context.request = request request.userdb_new = self.userdb_new request.db = self.db request.dashboard_userdb = self.dashboard_db request.registry.settings = self.settings def propagate_user_changes(user): """ Make sure there is a request.context.propagate_user_changes in testing too. """ logger.debug( 'FREDRIK: Testing dummy_request.context propagate_user_changes' ) return self.request.amrelay.request_sync(user) request.context.propagate_user_changes = propagate_user_changes return request
def run(app, files): root = app.root_factory(app) collection = root['file'] dummy_request = DummyRequest(root=root, registry=app.registry, _stats={}) manager.push({'request': dummy_request, 'registry': app.registry}) for i, uuid in enumerate(collection): item = root.get_by_uuid(uuid) dummy_request.context = item properties = item.upgrade_properties() sheets = None value = files.get(str(uuid)) if value is not None: properties['file_size'] = value['file_size'] sheets = { 'external': { 'service': 's3', 'bucket': 'encode-files', 'key': value['s3_file_name'], }, } item.update(properties, sheets=sheets) if (i + 1) % 100 == 0: logger.info('Updated %d', i + 1)
def test_get(self, mock_get_package, mock_stringIO): request = DummyRequest() request.context = DummyResource() request.matchdict['product_id'] = 'dummy' request.matchdict['package_id'] = 'test' import StringIO mock_get_package_result = { 'status': 200, 'file_contents': mock.Mock(), 'headers': { 'content-length': 4, 'content-type': 'app', } } mock_get_package.return_value = mock_get_package_result mock_stringIO_result = mock.Mock() mock_stringIO.return_value = mock_stringIO_result mock_stringIO_result.read.return_value = 'body' view = package_views.PackageViews(request) response = view.get() self.assertEqual(response.content_length, 4) self.assertEqual(response.status_code, 200) self.assertIs(type(response), httpexceptions.HTTPOk)
def _makeRequest(self, **kw): from pyramid.testing import DummyModel from pyramid.testing import DummyRequest request = DummyRequest(**kw) request.context = DummyModel() return request
def dummy_request(self, cookies={}): request = DummyRequest() request.context = DummyResource() request.signup_userdb = self.signup_userdb request.registry.settings = self.settings return request
def test_it_not_submitted(self): request = DummyRequest(dbsession=self.dbsession) request.user = User(name='foo', role='editor') request.context = PageResource(Page(name='AnotherPage')) info = PageAddEditView(request)() assert info['context'].page == request.context.page
def call(self, context): from kotti_tinymce.settings import get_settings_json request = DummyRequest() request.context = context return json.loads(get_settings_json(request))