本文整理汇总了Python中website.addons.dropbox.tests.factories.DropboxNodeSettingsFactory.serialize_waterbutler_credentials方法的典型用法代码示例。如果您正苦于以下问题:Python DropboxNodeSettingsFactory.serialize_waterbutler_credentials方法的具体用法?Python DropboxNodeSettingsFactory.serialize_waterbutler_credentials怎么用?Python DropboxNodeSettingsFactory.serialize_waterbutler_credentials使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类website.addons.dropbox.tests.factories.DropboxNodeSettingsFactory
的用法示例。
在下文中一共展示了DropboxNodeSettingsFactory.serialize_waterbutler_credentials方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: TestDropboxNodeSettingsModel
# 需要导入模块: from website.addons.dropbox.tests.factories import DropboxNodeSettingsFactory [as 别名]
# 或者: from website.addons.dropbox.tests.factories.DropboxNodeSettingsFactory import serialize_waterbutler_credentials [as 别名]
class TestDropboxNodeSettingsModel(OsfTestCase):
def setUp(self):
super(TestDropboxNodeSettingsModel, self).setUp()
self.user = UserFactory()
self.user.add_addon('dropbox')
self.user.save()
self.user_settings = self.user.get_addon('dropbox')
self.project = ProjectFactory()
self.node_settings = DropboxNodeSettingsFactory(
user_settings=self.user_settings,
owner=self.project
)
def test_fields(self):
node_settings = DropboxNodeSettings(user_settings=self.user_settings)
node_settings.save()
assert_true(node_settings.user_settings)
assert_equal(node_settings.user_settings.owner, self.user)
assert_true(hasattr(node_settings, 'folder'))
assert_true(hasattr(node_settings, 'registration_data'))
def test_folder_defaults_to_none(self):
node_settings = DropboxNodeSettings(user_settings=self.user_settings)
node_settings.save()
assert_is_none(node_settings.folder)
def test_has_auth(self):
settings = DropboxNodeSettings(user_settings=self.user_settings)
settings.save()
assert_false(settings.has_auth)
settings.user_settings.access_token = '123abc'
settings.user_settings.save()
assert_true(settings.has_auth)
def test_to_json(self):
settings = self.node_settings
user = UserFactory()
result = settings.to_json(user)
assert_equal(result['addon_short_name'], 'dropbox')
def test_delete(self):
assert_true(self.node_settings.user_settings)
assert_true(self.node_settings.folder)
old_logs = self.project.logs
self.node_settings.delete()
self.node_settings.save()
assert_is(self.node_settings.user_settings, None)
assert_is(self.node_settings.folder, None)
assert_true(self.node_settings.deleted)
assert_equal(self.project.logs, old_logs)
def test_deauthorize(self):
assert_true(self.node_settings.user_settings)
assert_true(self.node_settings.folder)
self.node_settings.deauthorize(auth=Auth(self.user))
self.node_settings.save()
assert_is(self.node_settings.user_settings, None)
assert_is(self.node_settings.folder, None)
last_log = self.project.logs[-1]
assert_equal(last_log.action, 'dropbox_node_deauthorized')
params = last_log.params
assert_in('node', params)
assert_in('project', params)
assert_in('folder', params)
def test_set_folder(self):
folder_name = 'queen/freddie'
self.node_settings.set_folder(folder_name, auth=Auth(self.user))
self.node_settings.save()
# Folder was set
assert_equal(self.node_settings.folder, folder_name)
# Log was saved
last_log = self.project.logs[-1]
assert_equal(last_log.action, 'dropbox_folder_selected')
def test_set_user_auth(self):
node_settings = DropboxNodeSettingsFactory()
user_settings = DropboxUserSettingsFactory()
node_settings.set_user_auth(user_settings)
node_settings.save()
assert_true(node_settings.has_auth)
assert_equal(node_settings.user_settings, user_settings)
# A log was saved
last_log = node_settings.owner.logs[-1]
assert_equal(last_log.action, 'dropbox_node_authorized')
log_params = last_log.params
assert_equal(log_params['folder'], node_settings.folder)
assert_equal(log_params['node'], node_settings.owner._primary_key)
assert_equal(last_log.user, user_settings.owner)
def test_serialize_credentials(self):
self.user_settings.access_token = 'secret'
self.user_settings.save()
credentials = self.node_settings.serialize_waterbutler_credentials()
expected = {'token': self.node_settings.user_settings.access_token}
#.........这里部分代码省略.........
示例2: TestDropboxNodeSettingsModel
# 需要导入模块: from website.addons.dropbox.tests.factories import DropboxNodeSettingsFactory [as 别名]
# 或者: from website.addons.dropbox.tests.factories.DropboxNodeSettingsFactory import serialize_waterbutler_credentials [as 别名]
#.........这里部分代码省略.........
settings = self.node_settings
user = UserFactory()
result = settings.to_json(user)
assert_equal(result["addon_short_name"], "dropbox")
def test_delete(self):
assert_true(self.node_settings.user_settings)
assert_true(self.node_settings.folder)
old_logs = self.project.logs
self.node_settings.delete()
self.node_settings.save()
assert_is(self.node_settings.user_settings, None)
assert_is(self.node_settings.folder, None)
assert_true(self.node_settings.deleted)
assert_equal(self.project.logs, old_logs)
def test_deauthorize(self):
assert_true(self.node_settings.user_settings)
assert_true(self.node_settings.folder)
self.node_settings.deauthorize(auth=Auth(self.user))
self.node_settings.save()
assert_is(self.node_settings.user_settings, None)
assert_is(self.node_settings.folder, None)
last_log = self.project.logs[-1]
assert_equal(last_log.action, "dropbox_node_deauthorized")
params = last_log.params
assert_in("node", params)
assert_in("project", params)
assert_in("folder", params)
def test_set_folder(self):
folder_name = "queen/freddie"
self.node_settings.set_folder(folder_name, auth=Auth(self.user))
self.node_settings.save()
# Folder was set
assert_equal(self.node_settings.folder, folder_name)
# Log was saved
last_log = self.project.logs[-1]
assert_equal(last_log.action, "dropbox_folder_selected")
def test_set_user_auth(self):
node_settings = DropboxNodeSettingsFactory()
user_settings = DropboxUserSettingsFactory()
node_settings.set_user_auth(user_settings)
node_settings.save()
assert_true(node_settings.has_auth)
assert_equal(node_settings.user_settings, user_settings)
# A log was saved
last_log = node_settings.owner.logs[-1]
assert_equal(last_log.action, "dropbox_node_authorized")
log_params = last_log.params
assert_equal(log_params["folder"], node_settings.folder)
assert_equal(log_params["node"], node_settings.owner._primary_key)
assert_equal(last_log.user, user_settings.owner)
def test_serialize_credentials(self):
self.user_settings.access_token = "secret"
self.user_settings.save()
credentials = self.node_settings.serialize_waterbutler_credentials()
expected = {"token": self.node_settings.user_settings.access_token}
assert_equal(credentials, expected)
def test_serialize_credentials_not_authorized(self):
self.node_settings.user_settings = None
self.node_settings.save()
with assert_raises(exceptions.AddonError):
self.node_settings.serialize_waterbutler_credentials()
def test_serialize_settings(self):
settings = self.node_settings.serialize_waterbutler_settings()
expected = {"folder": self.node_settings.folder}
assert_equal(settings, expected)
def test_serialize_settings_not_configured(self):
self.node_settings.folder = None
self.node_settings.save()
with assert_raises(exceptions.AddonError):
self.node_settings.serialize_waterbutler_settings()
def test_create_log(self):
action = "file_added"
path = "pizza.nii"
self.node_settings.folder = "/SomeOddPath"
self.node_settings.save()
nlog = len(self.project.logs)
self.node_settings.create_waterbutler_log(auth=Auth(user=self.user), action=action, metadata={"path": path})
self.project.reload()
assert_equal(len(self.project.logs), nlog + 1)
assert_equal(self.project.logs[-1].action, "dropbox_{0}".format(action))
assert_equal(self.project.logs[-1].params["path"], path)
@mock.patch("website.archiver.tasks.archive")
def test_does_not_get_copied_to_registrations(self, mock_archive):
registration = self.project.register_node(
schema=None, auth=Auth(user=self.project.creator), template="Template1", data="hodor"
)
assert_false(registration.has_addon("dropbox"))