def testListAccess(self): # self.createPanePlot() Access.give_access(self.account_id_one, self.account_id_two, PermissionsTest.FILE_NAME) listAccesses = Access.list_accesses(self.account_id_two)[0] self.assertEqual(listAccesses.owner_id, self.account_id_one) self.assertEqual(listAccesses.recipient_id, self.account_id_two) self.assertEqual(listAccesses.file_name, PermissionsTest.FILE_NAME)
def testRemoveAccess(self): # self.createPanePlot() Access.give_access(self.account_id_one, self.account_id_two, PermissionsTest.FILE_NAME) Access.remove_access(self.account_id_one, PermissionsTest.FILE_NAME) shared_doc = Document.select_shared_files(self.account_id_two) # Now file is removed from shared. self.assertEqual(shared_doc, [])
def share_file(request): data = json.loads(request.body) owner_id = request.user.id recipient_id = Account.name_to_id(data['user_name']) if not recipient_id: return error_response(['Could not find \'{}\'. Sharing failed'.format(data['user_name'])]) #print "owner_id", owner_id #print "recipient_id", recipient_id Access.give_access(owner_id, recipient_id, data['name']) return JsonResponse({"foo": "bar"})
def testGiveAccess(self): # self.createPanePlot() Access.give_access(self.account_id_one, self.account_id_two, PermissionsTest.FILE_NAME) # Then check retrieval. shared_doc = Document.select_shared_files(self.account_id_two)[0] # User 2 has none result = LR.get_user_regressions(self.account_id_two) self.assertEqual(shared_doc.file_name, PermissionsTest.FILE_NAME) self.assertEqual(shared_doc.account_id, self.account_id_one) self.assertEqual(result, [])
def select_shared_files(account): accesses = Access.list_accesses(account) documents = [] for access in accesses: owner_id = access.owner_id file_name = access.file_name document = Document.select_file(owner_id, file_name) documents.append(document) return documents
def delete_file(account, name): """ Deletes file belonging to user """ doc = Document.objects.get(file_name=name, account_id=account) if settings.PRODUCTION: doc.delete_file_from_storage() full_path = settings.BASE_DIR + doc.doc_file.url if os.path.isfile(full_path): os.remove(full_path) plotid_str_list = [] typeid_list = doc.pane_typeids.split(",") for typeid in typeid_list: plotid_str_list.append(typeid) owner_id = account file_name = name Access.remove_access(owner_id=owner_id, file_name=file_name) doc.delete() return plotid_str_list
def remove_permissions(request): Access.clear_accesses() return JsonResponse({"foo": "bar"})
def list_permissions(request): permissions = Access.list_accesses(request.user.id) return JsonResponse({"permissions": permissions})
def testClearAccess(self): Access.give_access(self.account_id_one, self.account_id_two, PermissionsTest.FILE_NAME) Access.clear_accesses() shared_doc = Document.select_shared_files(self.account_id_two) self.assertEqual(shared_doc, [])