def private_file(self, user): private_node = ProjectFactory(creator=user) return utils.create_test_file(private_node, user, filename='private_file')
def private_project(self, user): return ProjectFactory(creator=user, is_public=False)
def private_pointer_project(self, user): return ProjectFactory(is_public=False, creator=user)
def setUp(self): super(TestCheckOAuth, self).setUp() self.user = AuthUserFactory() self.node = ProjectFactory(creator=self.user)
def test_default_wiki(self): # There is no default wiki project1 = ProjectFactory() assert WikiVersion.objects.get_for_node(project1, 'home') is None
def project_preprint_other(self, user_admin_project_public): return ProjectFactory(creator=user_admin_project_public, is_public=True)
def project_deleted(self, user_admin_project_public): return ProjectFactory(creator=user_admin_project_public, is_deleted=True)
def project_published(self, user_admin_contrib): return ProjectFactory(creator=user_admin_contrib, is_public=True)
def test_cannot_access_withdrawn_node_logs(self): self.public_project = ProjectFactory(is_public=True, creator=self.user) url = '/{}registrations/{}/logs/'.format(API_BASE, self.registration._id) res = self.app.get(url, auth=self.user.auth, expect_errors=True) assert_equal(res.status_code, 403)
def pointer(self, user): return ProjectFactory(creator=user)
def project_three(self, user): return ProjectFactory(creator=user)
def private_project(self, user): return ProjectFactory(creator=user)
def project(admin_contrib, write_contrib, read_contrib): project = ProjectFactory(creator=admin_contrib) project.add_contributor(write_contrib, permissions.WRITE) project.add_contributor(read_contrib, permissions.READ) project.save() return project
def public_file(self, user): public_node = ProjectFactory(creator=user, is_public=True) return utils.create_test_file(public_node, user, filename='public_file')
def project_private_user_two(self, user_two): return ProjectFactory(title='Private Project User Two', is_public=False, creator=user_two)
def setUp(self): super(TestNodeWikiPage, self).setUp() self.user = UserFactory() self.project = ProjectFactory(creator=self.user) self.wiki = NodeWikiFactory(user=self.user, node=self.project)
def project_registration_public(self, user_admin_project_public): return ProjectFactory(creator=user_admin_project_public, is_public=True)
def project_two(self, user_one): return ProjectFactory(creator=user_one)
def project_private(self, user_admin_project_private): return ProjectFactory(creator=user_admin_project_private, is_public=False)
def test_no_permissions(self, app, primary_collection, collection_provider, collection_with_provider, collection_without_provider, user_one, user_two, project_two, url, payload): # Private # Sanity Check assert collection_provider.allow_submissions is False res = app.get(url) assert res.status_code == 200 assert len(res.json['data']) == 1 res = app.get(url, auth=user_two.auth) assert res.status_code == 200 res = app.post_json_api(url, payload(creator=user_two._id, guid=project_two._id, status='asdf'), expect_errors=True) assert res.status_code == 401 res = app.post_json_api(url, payload(creator=user_two._id, guid=project_two._id, status='asdf'), auth=user_two.auth, expect_errors=True) assert res.status_code == 403 # Public, accepting submissions collection_provider.allow_submissions = True collection_provider.save() primary_collection.is_public = True primary_collection.save() res = app.get(url) assert len(res.json['data']) == 1 assert res.status_code == 200 res = app.get(url, auth=user_two.auth) assert len(res.json['data']) == 1 assert res.status_code == 200 res = app.post_json_api(url, payload(creator=user_two._id, guid=project_two._id, status='asdf'), expect_errors=True) assert res.status_code == 401 res = app.post_json_api(url, payload(creator=user_two._id, guid=project_two._id, status='asdf'), auth=user_two.auth, expect_errors=True) # Neither collection perms nor project perms assert res.status_code == 403 project_three = ProjectFactory(creator=user_two) # has referent perm res = app.post_json_api(url, payload(creator=user_two._id, guid=project_three._id, status='asdf'), auth=user_two.auth, expect_errors=True) assert res.status_code == 201 assert not (collection_with_provider.guid_links.all() | collection_without_provider.guid_links.all()).filter( _id=project_three._id).exists() assert primary_collection.guid_links.filter( _id=project_three._id).exists()
def setUp(self): super(TestNodeFilesListPagination, self).setUp() self.user = AuthUserFactory() self.project = ProjectFactory(creator=self.user)
def node(self, user): return ProjectFactory(creator=user)
def project_pointer_public(self): return ProjectFactory(is_public=True)
def project_public_user_one(self, user_one): return ProjectFactory(title='Public Project User One', is_public=True, creator=user_one)
def parent(implicit_contributor): return ProjectFactory(title='Parent Project', creator=implicit_contributor)
def project_private_user_one(self, user_one): return ProjectFactory(title='Private Project User One', is_public=False, creator=user_one)
def private_project_pointer_project_two(self, user): return ProjectFactory(creator=user, is_public=True)
def project_public_user_two(self, user_two): return ProjectFactory(title='Public Project User Two', is_public=True, creator=user_two)
def public_pointer_project(self, user): return ProjectFactory(is_public=True, creator=user)
def private_project(self, user, pointer): private_project = ProjectFactory() private_project.add_contributor(user, permissions=permissions.WRITE) private_project.add_pointer(pointer, auth=Auth(user), save=True) private_project.save() return private_project