123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- /* eslint-disable @typescript-eslint/no-unused-expressions,@typescript-eslint/require-await */
- import 'mocha'
- import { expect } from 'chai'
- import {
- cleanupTests,
- createSingleServer,
- makeGetRequest,
- makePostBodyRequest,
- PeerTubeServer,
- PluginsCommand,
- setAccessTokensToServers
- } from '@shared/server-commands'
- import { HttpStatusCode } from '@shared/models'
- describe('Test plugin helpers', function () {
- let server: PeerTubeServer
- const basePaths = [
- '/plugins/test-five/router/',
- '/plugins/test-five/0.0.1/router/'
- ]
- before(async function () {
- this.timeout(30000)
- server = await createSingleServer(1)
- await setAccessTokensToServers([ server ])
- await server.plugins.install({ path: PluginsCommand.getPluginTestPath('-five') })
- })
- it('Should answer "pong"', async function () {
- for (const path of basePaths) {
- const res = await makeGetRequest({
- url: server.url,
- path: path + 'ping',
- expectedStatus: HttpStatusCode.OK_200
- })
- expect(res.body.message).to.equal('pong')
- }
- })
- it('Should check if authenticated', async function () {
- for (const path of basePaths) {
- const res = await makeGetRequest({
- url: server.url,
- path: path + 'is-authenticated',
- token: server.accessToken,
- expectedStatus: 200
- })
- expect(res.body.isAuthenticated).to.equal(true)
- const secRes = await makeGetRequest({
- url: server.url,
- path: path + 'is-authenticated',
- expectedStatus: 200
- })
- expect(secRes.body.isAuthenticated).to.equal(false)
- }
- })
- it('Should mirror post body', async function () {
- const body = {
- hello: 'world',
- riri: 'fifi',
- loulou: 'picsou'
- }
- for (const path of basePaths) {
- const res = await makePostBodyRequest({
- url: server.url,
- path: path + 'form/post/mirror',
- fields: body,
- expectedStatus: HttpStatusCode.OK_200
- })
- expect(res.body).to.deep.equal(body)
- }
- })
- it('Should remove the plugin and remove the routes', async function () {
- await server.plugins.uninstall({ npmName: 'peertube-plugin-test-five' })
- for (const path of basePaths) {
- await makeGetRequest({
- url: server.url,
- path: path + 'ping',
- expectedStatus: HttpStatusCode.NOT_FOUND_404
- })
- await makePostBodyRequest({
- url: server.url,
- path: path + 'ping',
- fields: {},
- expectedStatus: HttpStatusCode.NOT_FOUND_404
- })
- }
- })
- after(async function () {
- await cleanupTests([ server ])
- })
- })
|