def test_get_resource_is_denied(): URL = "https://www.box.com/" HOSTNAME = 'www.box.com' with pytest.raises(Exception) as exc: services.get_resource(URL) assert exc.value.status_code == status.HTTP_403_FORBIDDEN assert exc.value.detail % {'domain': HOSTNAME} == "You need to add %(domain)s to your settings." % {'domain': HOSTNAME}
def create(self, request): _response = services.get_resource(request.DATA.get('path')) data = json.loads(_response.text) slug = data.get('slug') if Project.objects.get(slug=slug): del data['slug'] data['owner'] = data.get('owner', request.user.email) project = dict_to_project(data) serializer = serializers.ProjectSerializer(project) return response.Ok(data=serializer.data)
def create(self, request): project = get_object_or_404(Project, pk=request.DATA.get('project')) self.check_permission(project) new_attachment = Attachment() filename = request.DATA.get('filename') object_id = request.DATA.get('object_id') path = request.DATA.get('path') revision = request.DATA.get('revision', None) size = request.DATA.get('size') content_type = self.get_content_type() if path.startswith('http'): _response = services.get_resource(path) common.save_attachment(new_attachment, project, request.user, object_id, filename, size, _response.content, content_type) else: rh = get_resource_handler() md, _response = rh.files_download(path, revision) common.save_attachment(new_attachment, project, request.user, object_id, md.name, md.size, _response.content, content_type) serializer = AttachmentSerializer(new_attachment) return response.Ok(data=serializer.data)