当前位置: 首页>>代码示例>>Python>>正文


Python DropboxNodeSettingsFactory.create_waterbutler_log方法代码示例

本文整理汇总了Python中website.addons.dropbox.tests.factories.DropboxNodeSettingsFactory.create_waterbutler_log方法的典型用法代码示例。如果您正苦于以下问题:Python DropboxNodeSettingsFactory.create_waterbutler_log方法的具体用法?Python DropboxNodeSettingsFactory.create_waterbutler_log怎么用?Python DropboxNodeSettingsFactory.create_waterbutler_log使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在website.addons.dropbox.tests.factories.DropboxNodeSettingsFactory的用法示例。


在下文中一共展示了DropboxNodeSettingsFactory.create_waterbutler_log方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: TestDropboxNodeSettingsModel

# 需要导入模块: from website.addons.dropbox.tests.factories import DropboxNodeSettingsFactory [as 别名]
# 或者: from website.addons.dropbox.tests.factories.DropboxNodeSettingsFactory import create_waterbutler_log [as 别名]

#.........这里部分代码省略.........
        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'
        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'],
            os.path.join(self.node_settings.folder, path),
        )

    def test_does_not_get_copied_to_registrations(self):
        registration = self.project.register_node(
            schema=None,
            auth=Auth(user=self.project.creator),
            template='Template1',
            data='hodor'
        )
        assert_false(registration.has_addon('dropbox'))
开发者ID:lbanner,项目名称:osf.io,代码行数:104,代码来源:test_models.py

示例2: TestDropboxNodeSettingsModel

# 需要导入模块: from website.addons.dropbox.tests.factories import DropboxNodeSettingsFactory [as 别名]
# 或者: from website.addons.dropbox.tests.factories.DropboxNodeSettingsFactory import create_waterbutler_log [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"))
开发者ID:rmoorman,项目名称:osf.io,代码行数:104,代码来源:test_models.py


注:本文中的website.addons.dropbox.tests.factories.DropboxNodeSettingsFactory.create_waterbutler_log方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。