123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 |
- /* eslint-disable @typescript-eslint/no-unused-expressions */
- import 'mocha'
- import { expect } from 'chai'
- import { VideoConstantManagerFactory } from '@server/lib/plugins/video-constant-manager-factory'
- import {
- VIDEO_CATEGORIES,
- VIDEO_LANGUAGES,
- VIDEO_LICENCES,
- VIDEO_PLAYLIST_PRIVACIES,
- VIDEO_PRIVACIES
- } from '@server/initializers/constants'
- import {
- VideoPlaylistPrivacy,
- VideoPrivacy
- } from '@shared/models'
- describe('VideoConstantManagerFactory', function () {
- const factory = new VideoConstantManagerFactory('peertube-plugin-constants')
- afterEach(() => {
- factory.resetVideoConstants('peertube-plugin-constants')
- })
- describe('VideoCategoryManager', () => {
- const videoCategoryManager = factory.createVideoConstantManager<number>('category')
- it('Should be able to list all video category constants', () => {
- const constants = videoCategoryManager.getConstants()
- expect(constants).to.deep.equal(VIDEO_CATEGORIES)
- })
- it('Should be able to delete a video category constant', () => {
- const successfullyDeleted = videoCategoryManager.deleteConstant(1)
- expect(successfullyDeleted).to.be.true
- expect(videoCategoryManager.getConstantValue(1)).to.be.undefined
- })
- it('Should be able to add a video category constant', () => {
- const successfullyAdded = videoCategoryManager.addConstant(42, 'The meaning of life')
- expect(successfullyAdded).to.be.true
- expect(videoCategoryManager.getConstantValue(42)).to.equal('The meaning of life')
- })
- it('Should be able to reset video category constants', () => {
- videoCategoryManager.deleteConstant(1)
- videoCategoryManager.resetConstants()
- expect(videoCategoryManager.getConstantValue(1)).not.be.undefined
- })
- })
- describe('VideoLicenceManager', () => {
- const videoLicenceManager = factory.createVideoConstantManager<number>('licence')
- it('Should be able to list all video licence constants', () => {
- const constants = videoLicenceManager.getConstants()
- expect(constants).to.deep.equal(VIDEO_LICENCES)
- })
- it('Should be able to delete a video licence constant', () => {
- const successfullyDeleted = videoLicenceManager.deleteConstant(1)
- expect(successfullyDeleted).to.be.true
- expect(videoLicenceManager.getConstantValue(1)).to.be.undefined
- })
- it('Should be able to add a video licence constant', () => {
- const successfullyAdded = videoLicenceManager.addConstant(42, 'European Union Public Licence')
- expect(successfullyAdded).to.be.true
- expect(videoLicenceManager.getConstantValue(42)).to.equal('European Union Public Licence')
- })
- it('Should be able to reset video licence constants', () => {
- videoLicenceManager.deleteConstant(1)
- videoLicenceManager.resetConstants()
- expect(videoLicenceManager.getConstantValue(1)).not.be.undefined
- })
- })
- describe('PlaylistPrivacyManager', () => {
- const playlistPrivacyManager = factory.createVideoConstantManager<VideoPlaylistPrivacy>('playlistPrivacy')
- it('Should be able to list all video playlist privacy constants', () => {
- const constants = playlistPrivacyManager.getConstants()
- expect(constants).to.deep.equal(VIDEO_PLAYLIST_PRIVACIES)
- })
- it('Should be able to delete a video playlist privacy constant', () => {
- const successfullyDeleted = playlistPrivacyManager.deleteConstant(1)
- expect(successfullyDeleted).to.be.true
- expect(playlistPrivacyManager.getConstantValue(1)).to.be.undefined
- })
- it('Should be able to add a video playlist privacy constant', () => {
- const successfullyAdded = playlistPrivacyManager.addConstant(42, 'Friends only')
- expect(successfullyAdded).to.be.true
- expect(playlistPrivacyManager.getConstantValue(42)).to.equal('Friends only')
- })
- it('Should be able to reset video playlist privacy constants', () => {
- playlistPrivacyManager.deleteConstant(1)
- playlistPrivacyManager.resetConstants()
- expect(playlistPrivacyManager.getConstantValue(1)).not.be.undefined
- })
- })
- describe('VideoPrivacyManager', () => {
- const videoPrivacyManager = factory.createVideoConstantManager<VideoPrivacy>('privacy')
- it('Should be able to list all video privacy constants', () => {
- const constants = videoPrivacyManager.getConstants()
- expect(constants).to.deep.equal(VIDEO_PRIVACIES)
- })
- it('Should be able to delete a video privacy constant', () => {
- const successfullyDeleted = videoPrivacyManager.deleteConstant(1)
- expect(successfullyDeleted).to.be.true
- expect(videoPrivacyManager.getConstantValue(1)).to.be.undefined
- })
- it('Should be able to add a video privacy constant', () => {
- const successfullyAdded = videoPrivacyManager.addConstant(42, 'Friends only')
- expect(successfullyAdded).to.be.true
- expect(videoPrivacyManager.getConstantValue(42)).to.equal('Friends only')
- })
- it('Should be able to reset video privacy constants', () => {
- videoPrivacyManager.deleteConstant(1)
- videoPrivacyManager.resetConstants()
- expect(videoPrivacyManager.getConstantValue(1)).not.be.undefined
- })
- })
- describe('VideoLanguageManager', () => {
- const videoLanguageManager = factory.createVideoConstantManager<string>('language')
- it('Should be able to list all video language constants', () => {
- const constants = videoLanguageManager.getConstants()
- expect(constants).to.deep.equal(VIDEO_LANGUAGES)
- })
- it('Should be able to add a video language constant', () => {
- const successfullyAdded = videoLanguageManager.addConstant('fr', 'Fr occitan')
- expect(successfullyAdded).to.be.true
- expect(videoLanguageManager.getConstantValue('fr')).to.equal('Fr occitan')
- })
- it('Should be able to delete a video language constant', () => {
- videoLanguageManager.addConstant('fr', 'Fr occitan')
- const successfullyDeleted = videoLanguageManager.deleteConstant('fr')
- expect(successfullyDeleted).to.be.true
- expect(videoLanguageManager.getConstantValue('fr')).to.be.undefined
- })
- it('Should be able to reset video language constants', () => {
- videoLanguageManager.addConstant('fr', 'Fr occitan')
- videoLanguageManager.resetConstants()
- expect(videoLanguageManager.getConstantValue('fr')).to.be.undefined
- })
- })
- })
|