def setUp(self): super(TestUserPreprints, self).setUp() self.user_one = AuthUserFactory() self.user_two = AuthUserFactory() self.preprint = PreprintFactory(title="Preprint User One", creator=self.user_one) self.public_project = ProjectFactory(title="Public Project User One", is_public=True, creator=self.user_one) self.private_project = ProjectFactory(title="Private Project User One", is_public=False, creator=self.user_one)
def setUp(self): super(TestPreprintUpdateLicense, self).setUp() ensure_licenses() self.admin_contributor = AuthUserFactory() self.rw_contributor = AuthUserFactory() self.read_contributor = AuthUserFactory() self.non_contributor = AuthUserFactory() self.preprint_provider = PreprintProviderFactory() self.preprint = PreprintFactory(creator=self.admin_contributor, provider=self.preprint_provider) self.preprint.node.add_contributor(self.rw_contributor, auth=Auth(self.admin_contributor)) self.preprint.node.add_contributor(self.read_contributor, auth=Auth(self.admin_contributor), permissions=['read']) self.preprint.node.save() self.cc0_license = NodeLicense.find_one(Q('name', 'eq', 'CC0 1.0 Universal')) self.mit_license = NodeLicense.find_one(Q('name', 'eq', 'MIT License')) self.no_license = NodeLicense.find_one(Q('name', 'eq', 'No license')) self.preprint_provider.licenses_acceptable = [self.cc0_license, self.no_license] self.preprint_provider.save() self.url = '/{}preprints/{}/'.format(API_BASE, self.preprint._id)
def setUp(self): super(TestPreprintFactory, self).setUp() self.user = AuthUserFactory() self.auth = Auth(user=self.user) self.preprint = PreprintFactory(creator=self.user) self.preprint.save()
def setUp(self): super(TestSetPreprintFile, self).setUp() self.user = AuthUserFactory() self.auth = Auth(user=self.user) self.read_write_user = AuthUserFactory() self.read_write_user_auth = Auth(user=self.read_write_user) self.project = ProjectFactory(creator=self.user) self.file = OsfStorageFile.create(is_file=True, node=self.project, path='/panda.txt', name='panda.txt', materialized_path='/panda.txt') self.file.save() self.file_two = OsfStorageFile.create( is_file=True, node=self.project, path='/pandapanda.txt', name='pandapanda.txt', materialized_path='/pandapanda.txt') self.file_two.save() self.project.add_contributor(self.read_write_user, permissions=[permissions.WRITE]) self.project.save() self.preprint = PreprintFactory(project=self.project, finish=False)
def setUp(self): super(TestUserNodesPreprintsFiltering, self).setUp() self.user = AuthUserFactory() self.no_preprints_node = ProjectFactory(creator=self.user) self.valid_preprint_node = ProjectFactory(creator=self.user) self.orphaned_preprint_node = ProjectFactory(creator=self.user) self.abandoned_preprint_node = ProjectFactory(creator=self.user) self.valid_preprint = PreprintFactory(project=self.valid_preprint_node) self.abandoned_preprint = PreprintFactory(project=self.abandoned_preprint_node, is_published=False) self.orphaned_preprint = PreprintFactory(project=self.orphaned_preprint_node) self.orphaned_preprint.node._is_preprint_orphan = True self.orphaned_preprint.node.save() self.url_base = '/{}users/me/nodes/?filter[preprint]='.format(API_BASE)
def setUp(self): super(TestPreprintList, self).setUp() self.user = AuthUserFactory() self.preprint = PreprintFactory(creator=self.user) self.url = '/{}preprints/'.format(API_BASE) self.project = ProjectFactory(creator=self.user)
def setUp(self): super(TestPreprintServicePermissions, self).setUp() self.user = AuthUserFactory() self.write_contrib = AuthUserFactory() self.project = ProjectFactory(creator=self.user) self.project.add_contributor(self.write_contrib, permissions=[permissions.WRITE]) self.preprint = PreprintFactory(project=self.project, is_published=False)
def setUp(self): super(TestPreprintDetail, self).setUp() self.user = AuthUserFactory() self.preprint = PreprintFactory(creator=self.user) self.url = '/{}preprints/{}/'.format(API_BASE, self.preprint._id) self.res = self.app.get(self.url) self.data = self.res.json['data']
def setUp(self): super(TestPreprintUpdate, self).setUp() self.user = AuthUserFactory() self.preprint = PreprintFactory(creator=self.user) self.url = '/{}preprints/{}/'.format(API_BASE, self.preprint._id) self.subject = SubjectFactory()
def setUp(self): super(TestNodePreprintList, self).setUp() self.user = AuthUserFactory() self.auth = Auth(self.user) self.preprint = PreprintFactory(creator=self.user, is_published=False) self.url = '/{}nodes/{}/preprints/'.format(API_BASE, self.preprint.node._id)
def test_already_a_preprint(self): preprint = PreprintFactory(creator=self.user) file_one_preprint = test_utils.create_test_file(preprint, self.user, 'openupthatwindow.pdf') already_preprint_payload = build_preprint_create_payload(preprint._id, self.subject._id, file_one_preprint._id) res = self.app.post_json_api(self.url, already_preprint_payload, auth=self.user.auth, expect_errors=True) assert_equal(res.status_code, 409) assert_equal(res.json['errors'][0]['detail'], 'This node already stored as a preprint, use the update method instead.')
def setUp(self): super(TestPreprintFiltering, self).setUp() self.user = AuthUserFactory() self.provider = PreprintProviderFactory(name='wwe') self.preprint = PreprintFactory(creator=self.user, providers=[self.provider]) self.preprint.add_tag('nature boy', Auth(self.user), save=False) self.preprint.add_tag('ric flair', Auth(self.user), save=False) self.preprint.save() self.provider_two = PreprintProviderFactory(name='wcw') self.preprint_two = PreprintFactory(creator=self.user, filename='woo.txt', providers=[self.provider_two]) self.preprint_two.add_tag('nature boy', Auth(self.user), save=False) self.preprint_two.add_tag('woo', Auth(self.user), save=False) self.preprint_two.save() self.preprint_three = PreprintFactory(creator=self.user, filename='stonecold.txt', providers=[self.provider]) self.preprint_three.add_tag('stone', Auth(self.user), save=False) self.preprint_two.add_tag('cold', Auth(self.user), save=False) self.preprint_three.save()
def test_read_write_user_already_a_preprint(self): assert_in(self.other_user, self.public_project.contributors) preprint = PreprintFactory(creator=self.user) preprint.add_contributor(self.other_user, permissions=[permissions.DEFAULT_CONTRIBUTOR_PERMISSIONS], save=True) file_one_preprint = test_utils.create_test_file(preprint, self.user, 'openupthatwindow.pdf') already_preprint_payload = build_preprint_create_payload(preprint._id, self.subject._id, file_one_preprint._id) res = self.app.post_json_api(self.url, already_preprint_payload, auth=self.other_user.auth, expect_errors=True) assert_equal(res.status_code, 403)
def setUp(self): super(TestPreprintFiltering, self).setUp() self.user = AuthUserFactory() self.provider = PreprintProviderFactory(name='wwe') self.provider_two = PreprintProviderFactory(name='wcw') self.subject = SubjectFactory() self.subject_two = SubjectFactory() self.preprint = PreprintFactory(creator=self.user, provider=self.provider, subjects=[[self.subject._id]]) self.preprint_two = PreprintFactory(creator=self.user, filename='woo.txt', provider=self.provider_two, subjects=[[self.subject_two._id]]) self.preprint_three = PreprintFactory(creator=self.user, filename='stonecold.txt', provider=self.provider, subjects=[[self.subject._id], [self.subject_two._id] ])
def setUp(self): super(TestPreprintRelationshipPreprintProvider, self).setUp() self.user = AuthUserFactory() self.read_write_user = AuthUserFactory() self.preprint = PreprintFactory(creator=self.user, providers=None) self.preprint.add_contributor(self.read_write_user) self.preprint.save() self.preprint_provider_one = PreprintProviderFactory() self.preprint_provider_two = PreprintProviderFactory() self.preprint_preprint_providers_url = self.create_url(self.preprint._id)
def create_fake_project(creator, n_users, privacy, n_components, name, n_tags, presentation_name, is_registration, is_preprint, preprint_providers): auth = Auth(user=creator) project_title = name if name else fake.science_sentence() if is_preprint: providers_to_add = [] if preprint_providers: providers = preprint_providers.split(',') for provider in providers: try: preprint_provider = models.PreprintProvider.find_one( Q('_id', 'eq', provider)) except NoResultsFound: preprint_provider = PreprintProviderFactory(name=provider) providers_to_add.append(preprint_provider) privacy = 'public' project = PreprintFactory(title=project_title, description=fake.science_paragraph(), creator=creator, providers=providers_to_add) elif is_registration: project = RegistrationFactory(title=project_title, description=fake.science_paragraph(), creator=creator) else: project = ProjectFactory(title=project_title, description=fake.science_paragraph(), creator=creator) project.set_privacy(privacy) for _ in range(n_users): contrib = create_fake_user() project.add_contributor(contrib, auth=auth) if isinstance(n_components, int): for _ in range(n_components): NodeFactory(project=project, title=fake.science_sentence(), description=fake.science_paragraph(), creator=creator) elif isinstance(n_components, list): render_generations_from_node_structure_list(project, creator, n_components) for _ in range(n_tags): project.add_tag(fake.science_word(), auth=auth) if presentation_name is not None: project.add_tag(presentation_name, auth=auth) project.add_tag('poster', auth=auth) project.save() logger.info('Created project: {0}'.format(project.title)) return project
def test_already_a_preprint_with_conflicting_provider(self): preprint = PreprintFactory(creator=self.user) file_one_preprint = test_utils.create_test_file( preprint.node, self.user, 'openupthatwindow.pdf') already_preprint_payload = build_preprint_create_payload( preprint.node._id, preprint.provider._id, file_one_preprint._id) res = self.app.post_json_api(self.url, already_preprint_payload, auth=self.user.auth, expect_errors=True) assert_equal(res.status_code, 409) assert_in( 'Only one preprint per provider can be submitted for a node.', res.json['errors'][0]['detail'])
def setUp(self): super(TestOnPreprintUpdatedTask, self).setUp() self.user = AuthUserFactory() self.auth = Auth(user=self.user) self.preprint = PreprintFactory() self.preprint.node.add_tag('preprint', self.auth, save=False) self.preprint.node.add_tag('spoderman', self.auth, save=False) self.preprint.node.add_unregistered_contributor( 'BoJack Horseman', '*****@*****.**', Auth(self.preprint.node.creator)) self.preprint.node.add_contributor(self.user, visible=False) self.preprint.node.save() self.preprint.node.creator.given_name = 'ZZYZ' self.preprint.node.creator.save() self.preprint.set_subjects([[SubjectFactory()._id]], auth=Auth(self.preprint.node.creator), save=False)
def setUp(self): super(TestOnPreprintUpdatedTask, self).setUp() self.preprint = PreprintFactory()
def setUp(self): super(TestPreprintProviders, self).setUp() self.preprint = PreprintFactory(providers=[]) self.provider = PreprintProviderFactory(name='WWEArxiv')
def setUp(self): super(TestPreprintDelete, self).setUp() self.user = AuthUserFactory() self.unpublished_preprint = PreprintFactory(creator=self.user, is_published=False) self.published_preprint = PreprintFactory(creator=self.user) self.url = '/{}preprints/{{}}/'.format(API_BASE)