def setUp(self): super(TestCallbacks, self).setUp() self.user = UserFactory() self.user.add_addon('twofactor') self.user_settings = self.user.get_addon('twofactor')
def user(): return UserFactory()
def setUp(self): super(TestDisabledUser, self).setUp() self.user = UserFactory() self.user.set_password('Korben Dallas') self.user.is_disabled = True self.user.save()
def setUp(self): super(TestPreregFiles, self).setUp() self.prereg_user = AuthUserFactory() self.user = AuthUserFactory() self.node = ProjectFactory(creator=self.user) prereg_schema = get_prereg_schema() self.d_of_qs = { 'q7': OsfStorageFileNode(node=self.node, name='7'), 'q11': OsfStorageFileNode(node=self.node, name='11'), 'q16': OsfStorageFileNode(node=self.node, name='16'), 'q12': OsfStorageFileNode(node=self.node, name='12'), 'q13': OsfStorageFileNode(node=self.node, name='13'), 'q19': OsfStorageFileNode(node=self.node, name='19'), 'q26': OsfStorageFileNode(node=self.node, name='26') } data = {} for q, f in self.d_of_qs.iteritems(): guid = f.get_guid(create=True)._id f.save() if q == 'q26': data[q] = { 'comments': [], 'value': '26', 'extra': [{ 'data': { 'provider': 'osfstorage', 'path': f.path, }, 'fileId': guid, 'nodeId': self.node._id, }] } continue data[q] = { 'value': { 'uploader': { 'extra': [{ 'data': { 'provider': 'osfstorage', 'path': f.path, }, 'fileId': guid, 'nodeId': self.node._id, }] } } } self.draft = DraftRegistrationFactory( initiator=self.user, branched_from=self.node, registration_schema=prereg_schema, registration_metadata=data) self.prereg_user.save() self.admin_user = UserFactory() self.admin_user.is_superuser = True self.admin_user.groups.add(Group.objects.get(name='prereg_admin')) self.admin_user.groups.add(Group.objects.get(name='prereg_view')) self.admin_user.save()
def test_data_storage_usage_command(self): import logging logger = logging.getLogger(__name__) expected_summary_data = OrderedDict([ ('date', None), ('total', 0), ('deleted', 0), ('registrations', 0), ('nd_quick_files', 0), ('nd_public_nodes', 0), ('nd_private_nodes', 0), ('nd_preprints', 0), ('nd_supp_nodes', 0), ('canada_montreal', 0), ('australia_sydney', 0), ('germany_frankfurt', 0), ('united_states', 0), ]) user = UserFactory() user_addon = user.get_addon('osfstorage') user_addon.default_region_id = self.region_us region_ca = RegionFactory(_id='CA-1', name=u'Canada - Montréal') region_de = RegionFactory(_id='DE-1', name='Germany - Frankfurt') region_au = RegionFactory(_id='AU-1', name='Australia - Sydney') project_public_us = self.project(creator=user, is_public=True) small_size = next_file_size() file_size = next(small_size) project_public_us_test_file = create_test_file( target=project_public_us, user=user, size=file_size) logger.debug(u'Public project, US: {}'.format(file_size)) expected_summary_data['total'] += file_size expected_summary_data['nd_public_nodes'] += file_size expected_summary_data['united_states'] += file_size file_size = next(small_size) self.add_file_version( project_public_us_test_file, user=user, size=file_size, ) logger.debug(u'Public project file version, US: {}'.format(file_size)) expected_summary_data['total'] += file_size expected_summary_data['nd_public_nodes'] += file_size expected_summary_data['united_states'] += file_size project_private_au = self.project(creator=user, is_public=False, region=region_au) file_size = next(small_size) create_test_file(target=project_private_au, user=user, size=file_size) logger.debug(u'Private project, AU: {}'.format(file_size)) expected_summary_data['total'] += file_size expected_summary_data['nd_private_nodes'] += file_size expected_summary_data['australia_sydney'] += file_size component_private_small_deleted_de = self.project( creator=user, is_public=False, region=region_de, parent=project_public_us) file_size = next(small_size) deleted_file = create_test_file( target=component_private_small_deleted_de, user=user, size=file_size, ) logger.debug('Before deletion: {}'.format(deleted_file.target.title)) deleted_file.delete(user=user, save=True) logger.debug(u'Deleted project, DE: {}'.format(file_size)) expected_summary_data['total'] += file_size expected_summary_data['deleted'] += file_size expected_summary_data['germany_frankfurt'] += file_size logger.debug('After deletion: {}'.format(deleted_file.target.title)) file_size = next(small_size) PreprintFactory(creator=user, file_size=file_size) # preprint_us logger.debug(u'Preprint, US: {}'.format(file_size)) expected_summary_data['total'] += file_size expected_summary_data['nd_preprints'] += file_size expected_summary_data['united_states'] += file_size user_addon.default_region_id = region_ca user_addon.save() file_size = next(small_size) preprint_with_supplement_ca = PreprintFactory(creator=user, file_size=file_size) logger.debug(u'Preprint, CA: {}'.format(file_size)) expected_summary_data['total'] += file_size expected_summary_data['nd_preprints'] += file_size expected_summary_data['canada_montreal'] += file_size user_addon.default_region_id = self.region_us user_addon.save() supplementary_node_public_au = self.project(creator=user, is_public=True, region=region_au) preprint_with_supplement_ca.node = supplementary_node_public_au preprint_with_supplement_ca.save() file_size = next(small_size) create_test_file(target=supplementary_node_public_au, user=user, size=file_size) logger.debug( u'Public supplemental project of Canadian preprint, US: {}'.format( file_size)) expected_summary_data['total'] += file_size expected_summary_data['nd_supp_nodes'] += file_size expected_summary_data['nd_public_nodes'] += file_size expected_summary_data['australia_sydney'] += file_size file_size = next(small_size) withdrawn_preprint_us = PreprintFactory(creator=user, file_size=file_size) withdrawn_preprint_us.date_withdrawn = timezone.now() withdrawn_preprint_us.save() logger.debug(u'Withdrawn preprint, US: {}'.format(file_size)) expected_summary_data['total'] += file_size expected_summary_data['nd_preprints'] += file_size expected_summary_data['united_states'] += file_size quickfiles_node_us = QuickFilesNode.objects.get(creator=user) file_size = next(small_size) create_test_file(target=quickfiles_node_us, user=user, size=file_size) logger.debug(u'Quickfile, US: {}'.format(file_size)) expected_summary_data['total'] += file_size expected_summary_data['nd_quick_files'] += file_size expected_summary_data['united_states'] += file_size file_size = next(small_size) quickfile_deleted = create_test_file(filename='deleted_test_file', target=quickfiles_node_us, user=user, size=file_size) quickfile_deleted.delete(user=user, save=True) logger.debug(u'Deleted quickfile, US: {}'.format(file_size)) expected_summary_data['total'] += file_size expected_summary_data['deleted'] += file_size expected_summary_data['united_states'] += file_size project_to_register_us = self.project(creator=user, is_public=True, region=self.region_us) registration = self.registration(project=project_to_register_us, creator=user) file_size = next(small_size) create_test_file(target=registration, user=user, size=file_size) assert registration.get_addon('osfstorage').region == self.region_us logger.debug(u'Registration, US: {}'.format(file_size)) expected_summary_data['total'] += file_size expected_summary_data['united_states'] += file_size expected_summary_data['registrations'] += file_size withdrawal = self.registration(project=project_to_register_us, creator=user, withdrawn=True) file_size = next(small_size) create_test_file(target=withdrawal, user=user, size=file_size) logger.debug(u'Withdrawn registration, US: {}'.format(file_size)) expected_summary_data['total'] += file_size expected_summary_data['united_states'] += file_size expected_summary_data['registrations'] += file_size actual_summary_data = process_usages(dry_run=True, page_size=2) actual_keys = actual_summary_data.keys() for key in actual_summary_data: logger.info('Actual field: {}'.format(key)) expected_keys = expected_summary_data.keys() for key in expected_summary_data: logger.info('Expected field: {}'.format(key)) assert actual_keys == expected_keys assert len(actual_keys) != 0 for key in actual_keys: if key != 'date': assert (key, expected_summary_data[key]) == ( key, actual_summary_data[key])
def test__get_readable_descendants_masked_by_permissions(self): # Users should be able to see through components they do not have # permissions to. # Users should not be able to see through links to nodes they do not # have permissions to. # # 1(AB) # / | \ # * | \ # / | \ # 2(A) 4(B) 7(A) # | | | \ # | | | \ # 3(AB) 5(B) 8(AB) 9(B) # | # | # 6(A) # # userA = UserFactory(fullname='User A') userB = UserFactory(fullname='User B') project1 = ProjectFactory(creator=self.user, title='One') project1.add_contributor(userA, auth=Auth(self.user), permissions=['read']) project1.add_contributor(userB, auth=Auth(self.user), permissions=['read']) component2 = ProjectFactory(creator=self.user, title='Two') component2.add_contributor(userA, auth=Auth(self.user), permissions=['read']) component3 = ProjectFactory(creator=self.user, title='Three') component3.add_contributor(userA, auth=Auth(self.user), permissions=['read']) component3.add_contributor(userB, auth=Auth(self.user), permissions=['read']) component4 = ProjectFactory(creator=self.user, title='Four') component4.add_contributor(userB, auth=Auth(self.user), permissions=['read']) component5 = ProjectFactory(creator=self.user, title='Five') component5.add_contributor(userB, auth=Auth(self.user), permissions=['read']) component6 = ProjectFactory(creator=self.user, title='Six') component6.add_contributor(userA, auth=Auth(self.user), permissions=['read']) component7 = ProjectFactory(creator=self.user, title='Seven') component7.add_contributor(userA, auth=Auth(self.user), permissions=['read']) component8 = ProjectFactory(creator=self.user, title='Eight') component8.add_contributor(userA, auth=Auth(self.user), permissions=['read']) component8.add_contributor(userB, auth=Auth(self.user), permissions=['read']) component9 = ProjectFactory(creator=self.user, title='Nine') component9.add_contributor(userB, auth=Auth(self.user), permissions=['read']) project1.add_pointer(component2, Auth(self.user)) NodeRelation.objects.create(parent=project1, child=component4) NodeRelation.objects.create(parent=project1, child=component7) NodeRelation.objects.create(parent=component2, child=component3) NodeRelation.objects.create(parent=component4, child=component5) NodeRelation.objects.create(parent=component5, child=component6) NodeRelation.objects.create(parent=component7, child=component8) NodeRelation.objects.create(parent=component7, child=component9) nodes, all_readable = _get_readable_descendants(auth=Auth(userA), node=project1) assert_equal(len(nodes), 3) assert_false(all_readable) for node in nodes: assert_in(node.title, ['Two', 'Six', 'Seven']) nodes, all_readable = _get_readable_descendants(auth=Auth(userB), node=project1) assert_equal(len(nodes), 3) assert_false(all_readable) for node in nodes: assert_in(node.title, ['Four', 'Eight', 'Nine'])
def test_get_or_create_user_exists(self): user = UserFactory() fetched, created = get_or_create_user(user.fullname, user.username, is_spam=True) assert_false(created) assert_equal(user._id, fetched._id) assert_false('is_spam' in fetched.system_tags)
def setUp(self): super(TestCASExternalLogin, self).setUp() self.user = UserFactory()
def test_get_user_by_id(self): user = UserFactory() assert_equal(OSFUser.load(user._id), user)
def creator(self): return UserFactory()
def setUp(self): self.user = UserFactory()
def make_user(username, fullname): return UserFactory(username=username, fullname=fullname)
def test_to_json(self): settings = self.node_settings user = UserFactory() result = settings.to_json(user) assert_equal(result['addon_short_name'], self.short_name)
def setUp(self): super(TestCiteprocpy, self).setUp() self.user = UserFactory(fullname='Henrique Harman')
def setUp(self): super(TestViewProjectEmbeds, self).setUp() self.user = UserFactory() self.project = ProjectFactory(creator=self.user)
def test_get_user_by_email(self): user = UserFactory() assert_equal(auth.get_user(email=user.username), user)
def setUp(self): OsfTestCase.setUp(self) self.user = UserFactory()
def test_logged_in(self): user = UserFactory() auth_obj = Auth(user=user) assert_true(auth_obj.logged_in) auth2 = Auth(user=None) assert_false(auth2.logged_in)
def setUp(self): super(TestExternalProviderOAuth2, self).setUp() self.user = UserFactory() self.provider = MockOAuth2Provider()
def test_must_be_logged_in_decorator_with_user(self, mock_from_kwargs): user = UserFactory() mock_from_kwargs.return_value = Auth(user=user) protected()
def setUp(self): super(TestSendQueuedMails, self).setUp() self.user = UserFactory() self.user.date_last_login = timezone.now() self.user.osf_mailing_lists[settings.OSF_HELP_LIST] = True self.user.save()
def user_one(self): user = UserFactory() user.set_password('password1') user.auth = (user.username, 'password1') user.save() return user
def setUp(self): super(TestNodeSerializer, self).setUp() self.user = UserFactory()
def user(self): return UserFactory()
def setUp(self): self.user = UserFactory() self.request = RequestFactory().post('/fake_path') self.view = views.UserDeleteView self.view = setup_log_view(self.view, self.request, guid=self.user._id)
def test_before_page_load_not_contributor(self): message = self.node_settings.before_page_load(self.project, UserFactory()) assert_false(message)
def test_sees_another_profile(self): user2 = UserFactory() res = self.app.get(user2.url, auth=self.auth) td1 = res.html.find('td', text=re.compile(r'Public(.*?)Profile')) td2 = td1.find_next_sibling('td') assert_equal(td2.text, user2.display_absolute_url)
def setUp(self): super(TestViewProject, self).setUp() self.user = UserFactory() self.node = ProjectFactory(creator=self.user)
def setUp(self): super(TestResendConfirmation, self).setUp() self.unconfirmed_user = UnconfirmedUserFactory() self.confirmed_user = UserFactory() self.get_url = web_url_for('resend_confirmation_get') self.post_url = web_url_for('resend_confirmation_post')
def setUp(self): super(TestOAuthScopedAccess, self).setUp() self.user = UserFactory() self.user2 = UserFactory() # Todo move inside tests that need this self.project = ProjectFactory(creator=self.user)