]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/tests/api/server/stats.ts
More robust server stats tests
[github/Chocobozzz/PeerTube.git] / server / tests / api / server / stats.ts
index 0e77712cf7781620a44227f5e062c97443f49cce..6fbf3218631d935eb05b54721e57b25e19a0ee91 100644 (file)
@@ -135,7 +135,7 @@ describe('Test stats (excluding redundancy)', function () {
   })
 
   it('Should correctly count video file sizes if transcoding is enabled', async function () {
-    this.timeout(20000)
+    this.timeout(60000)
 
     await updateCustomSubConfig(servers[0].url, servers[0].accessToken, {
       transcoding: {
@@ -176,6 +176,38 @@ describe('Test stats (excluding redundancy)', function () {
     }
   })
 
+  it('Should have the correct AP stats', async function () {
+    this.timeout(60000)
+
+    await updateCustomSubConfig(servers[0].url, servers[0].accessToken, {
+      transcoding: {
+        enabled: false
+      }
+    })
+
+    const res1 = await getStats(servers[1].url)
+    const first = res1.body as ServerStats
+
+    for (let i = 0; i < 10; i++) {
+      await uploadVideo(servers[0].url, servers[0].accessToken, { name: 'video' })
+    }
+
+    await waitJobs(servers)
+
+    const res2 = await getStats(servers[1].url)
+    const second: ServerStats = res2.body
+
+    expect(second.totalActivityPubMessagesProcessed).to.be.greaterThan(first.totalActivityPubMessagesProcessed)
+
+    await wait(5000)
+
+    const res3 = await getStats(servers[1].url)
+    const third: ServerStats = res3.body
+
+    expect(third.totalActivityPubMessagesWaiting).to.equal(0)
+    expect(third.activityPubMessagesProcessedPerSecond).to.be.lessThan(second.activityPubMessagesProcessedPerSecond)
+  })
+
   after(async function () {
     await cleanupTests(servers)
   })