]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/tests/api/server/config-defaults.ts
Add ability to cancel & delete video imports
[github/Chocobozzz/PeerTube.git] / server / tests / api / server / config-defaults.ts
index 3dff7bfb7aa9fc787dcff8fa77f68a79366dc884..3ff09bf7ea2c210f61a90d2b3b583e0e75daeaba 100644 (file)
@@ -2,15 +2,9 @@
 
 import 'mocha'
 import * as chai from 'chai'
-import {
-  cleanupTests,
-  createSingleServer,
-  FIXTURE_URLS,
-  PeerTubeServer,
-  setAccessTokensToServers,
-  setDefaultVideoChannel
-} from '@shared/extra-utils'
+import { FIXTURE_URLS } from '@server/tests/shared'
 import { VideoDetails, VideoPrivacy } from '@shared/models'
+import { cleanupTests, createSingleServer, PeerTubeServer, setAccessTokensToServers, setDefaultVideoChannel } from '@shared/server-commands'
 
 const expect = chai.expect
 
@@ -21,18 +15,7 @@ describe('Test config defaults', function () {
   before(async function () {
     this.timeout(30000)
 
-    const overrideConfig = {
-      defaults: {
-        publish: {
-          comments_enabled: false,
-          download_enabled: false,
-          privacy: VideoPrivacy.INTERNAL,
-          licence: 4
-        }
-      }
-    }
-
-    server = await createSingleServer(1, overrideConfig)
+    server = await createSingleServer(1)
     await setAccessTokensToServers([ server ])
     await setDefaultVideoChannel([ server ])
 
@@ -40,6 +23,23 @@ describe('Test config defaults', function () {
   })
 
   describe('Default publish values', function () {
+
+    before(async function () {
+      const overrideConfig = {
+        defaults: {
+          publish: {
+            comments_enabled: false,
+            download_enabled: false,
+            privacy: VideoPrivacy.INTERNAL,
+            licence: 4
+          }
+        }
+      }
+
+      await server.kill()
+      await server.run(overrideConfig)
+    })
+
     const attributes = {
       name: 'video',
       downloadEnabled: undefined,
@@ -117,6 +117,96 @@ describe('Test config defaults', function () {
     })
   })
 
+  describe('Default P2P values', function () {
+
+    describe('Webapp default value', function () {
+
+      before(async function () {
+        const overrideConfig = {
+          defaults: {
+            p2p: {
+              webapp: {
+                enabled: false
+              }
+            }
+          }
+        }
+
+        await server.kill()
+        await server.run(overrideConfig)
+      })
+
+      it('Should have appropriate P2P config', async function () {
+        const config = await server.config.getConfig()
+
+        expect(config.defaults.p2p.webapp.enabled).to.be.false
+        expect(config.defaults.p2p.embed.enabled).to.be.true
+      })
+
+      it('Should create a user with this default setting', async function () {
+        await server.users.create({ username: 'user_p2p_1' })
+        const userToken = await server.login.getAccessToken('user_p2p_1')
+
+        const { p2pEnabled } = await server.users.getMyInfo({ token: userToken })
+        expect(p2pEnabled).to.be.false
+      })
+
+      it('Should register a user with this default setting', async function () {
+        await server.users.register({ username: 'user_p2p_2' })
+
+        const userToken = await server.login.getAccessToken('user_p2p_2')
+
+        const { p2pEnabled } = await server.users.getMyInfo({ token: userToken })
+        expect(p2pEnabled).to.be.false
+      })
+    })
+
+    describe('Embed default value', function () {
+
+      before(async function () {
+        const overrideConfig = {
+          defaults: {
+            p2p: {
+              embed: {
+                enabled: false
+              }
+            }
+          },
+          signup: {
+            limit: 15
+          }
+        }
+
+        await server.kill()
+        await server.run(overrideConfig)
+      })
+
+      it('Should have appropriate P2P config', async function () {
+        const config = await server.config.getConfig()
+
+        expect(config.defaults.p2p.webapp.enabled).to.be.true
+        expect(config.defaults.p2p.embed.enabled).to.be.false
+      })
+
+      it('Should create a user with this default setting', async function () {
+        await server.users.create({ username: 'user_p2p_3' })
+        const userToken = await server.login.getAccessToken('user_p2p_3')
+
+        const { p2pEnabled } = await server.users.getMyInfo({ token: userToken })
+        expect(p2pEnabled).to.be.true
+      })
+
+      it('Should register a user with this default setting', async function () {
+        await server.users.register({ username: 'user_p2p_4' })
+
+        const userToken = await server.login.getAccessToken('user_p2p_4')
+
+        const { p2pEnabled } = await server.users.getMyInfo({ token: userToken })
+        expect(p2pEnabled).to.be.true
+      })
+    })
+  })
+
   after(async function () {
     await cleanupTests([ server ])
   })