Esempio n. 1
0
 def private_file(self, user):
     private_node = ProjectFactory(creator=user)
     return utils.create_test_file(private_node,
                                   user,
                                   filename='private_file')
Esempio n. 2
0
 def private_project(self, user):
     return ProjectFactory(creator=user, is_public=False)
Esempio n. 3
0
 def private_pointer_project(self, user):
     return ProjectFactory(is_public=False, creator=user)
Esempio n. 4
0
 def setUp(self):
     super(TestCheckOAuth, self).setUp()
     self.user = AuthUserFactory()
     self.node = ProjectFactory(creator=self.user)
Esempio n. 5
0
 def test_default_wiki(self):
     # There is no default wiki
     project1 = ProjectFactory()
     assert WikiVersion.objects.get_for_node(project1, 'home') is None
Esempio n. 6
0
 def project_preprint_other(self, user_admin_project_public):
     return ProjectFactory(creator=user_admin_project_public,
                           is_public=True)
Esempio n. 7
0
 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)
Esempio n. 9
0
 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)
Esempio n. 10
0
 def pointer(self, user):
     return ProjectFactory(creator=user)
 def project_three(self, user):
     return ProjectFactory(creator=user)
Esempio n. 12
0
 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
Esempio n. 14
0
 def public_file(self, user):
     public_node = ProjectFactory(creator=user, is_public=True)
     return utils.create_test_file(public_node,
                                   user,
                                   filename='public_file')
Esempio n. 15
0
 def project_private_user_two(self, user_two):
     return ProjectFactory(title='Private Project User Two',
                           is_public=False,
                           creator=user_two)
Esempio n. 16
0
 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)
Esempio n. 17
0
 def project_registration_public(self, user_admin_project_public):
     return ProjectFactory(creator=user_admin_project_public,
                           is_public=True)
Esempio n. 18
0
 def project_two(self, user_one):
     return ProjectFactory(creator=user_one)
Esempio n. 19
0
 def project_private(self, user_admin_project_private):
     return ProjectFactory(creator=user_admin_project_private,
                           is_public=False)
Esempio n. 20
0
    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()
Esempio n. 21
0
 def setUp(self):
     super(TestNodeFilesListPagination, self).setUp()
     self.user = AuthUserFactory()
     self.project = ProjectFactory(creator=self.user)
 def node(self, user):
     return ProjectFactory(creator=user)
Esempio n. 23
0
 def project_pointer_public(self):
     return ProjectFactory(is_public=True)
Esempio n. 24
0
 def project_public_user_one(self, user_one):
     return ProjectFactory(title='Public Project User One',
                           is_public=True,
                           creator=user_one)
Esempio n. 25
0
def parent(implicit_contributor):
    return ProjectFactory(title='Parent Project', creator=implicit_contributor)
Esempio n. 26
0
 def project_private_user_one(self, user_one):
     return ProjectFactory(title='Private Project User One',
                           is_public=False,
                           creator=user_one)
Esempio n. 27
0
 def private_project_pointer_project_two(self, user):
     return ProjectFactory(creator=user, is_public=True)
Esempio n. 28
0
 def project_public_user_two(self, user_two):
     return ProjectFactory(title='Public Project User Two',
                           is_public=True,
                           creator=user_two)
Esempio n. 29
0
 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