import { join } from 'path'
function listPlugins (parameters: {
- url: string,
- accessToken: string,
- start?: number,
- count?: number,
- sort?: string,
- pluginType?: PluginType,
- uninstalled?: boolean,
+ url: string
+ accessToken: string
+ start?: number
+ count?: number
+ sort?: string
+ pluginType?: PluginType
+ uninstalled?: boolean
expectedStatus?: number
}) {
const { url, accessToken, start, count, sort, pluginType, uninstalled, expectedStatus = 200 } = parameters
}
function listAvailablePlugins (parameters: {
- url: string,
- accessToken: string,
- start?: number,
- count?: number,
- sort?: string,
- pluginType?: PluginType,
- currentPeerTubeEngine?: string,
+ url: string
+ accessToken: string
+ start?: number
+ count?: number
+ sort?: string
+ pluginType?: PluginType
+ currentPeerTubeEngine?: string
search?: string
expectedStatus?: number
}) {
}
function getPlugin (parameters: {
- url: string,
- accessToken: string,
- npmName: string,
+ url: string
+ accessToken: string
+ npmName: string
expectedStatus?: number
}) {
const { url, accessToken, npmName, expectedStatus = 200 } = parameters
}
function updatePluginSettings (parameters: {
- url: string,
- accessToken: string,
- npmName: string,
- settings: any,
+ url: string
+ accessToken: string
+ npmName: string
+ settings: any
expectedStatus?: number
}) {
const { url, accessToken, npmName, settings, expectedStatus = 204 } = parameters
}
function getPluginRegisteredSettings (parameters: {
- url: string,
- accessToken: string,
- npmName: string,
+ url: string
+ accessToken: string
+ npmName: string
expectedStatus?: number
}) {
const { url, accessToken, npmName, expectedStatus = 200 } = parameters
})
}
+function getPublicSettings (parameters: {
+ url: string
+ npmName: string
+ expectedStatus?: number
+}) {
+ const { url, npmName, expectedStatus = 200 } = parameters
+ const path = '/api/v1/plugins/' + npmName + '/public-settings'
+
+ return makeGetRequest({
+ url,
+ path,
+ statusCodeExpected: expectedStatus
+ })
+}
+
+function getPluginTranslations (parameters: {
+ url: string
+ locale: string
+ expectedStatus?: number
+}) {
+ const { url, locale, expectedStatus = 200 } = parameters
+ const path = '/plugins/translations/' + locale + '.json'
+
+ return makeGetRequest({
+ url,
+ path,
+ statusCodeExpected: expectedStatus
+ })
+}
+
function installPlugin (parameters: {
- url: string,
- accessToken: string,
- path?: string,
+ url: string
+ accessToken: string
+ path?: string
npmName?: string
expectedStatus?: number
}) {
}
function updatePlugin (parameters: {
- url: string,
- accessToken: string,
- path?: string,
+ url: string
+ accessToken: string
+ path?: string
npmName?: string
expectedStatus?: number
}) {
}
function uninstallPlugin (parameters: {
- url: string,
- accessToken: string,
+ url: string
+ accessToken: string
npmName: string
expectedStatus?: number
}) {
return readJSON(path)
}
+function getPluginTestPath (suffix = '') {
+ return join(root(), 'server', 'tests', 'fixtures', 'peertube-plugin-test' + suffix)
+}
+
export {
listPlugins,
listAvailablePlugins,
installPlugin,
+ getPluginTranslations,
getPluginsCSS,
updatePlugin,
getPlugin,
getPluginRegisteredSettings,
getPackageJSONPath,
updatePluginPackageJSON,
- getPluginPackageJSON
+ getPluginPackageJSON,
+ getPluginTestPath,
+ getPublicSettings
}