]>
Commit | Line | Data |
---|---|---|
9b474844 C |
1 | /* tslint:disable:no-unused-expression */ |
2 | ||
3 | import * as chai from 'chai' | |
4 | import 'mocha' | |
89cd1275 C |
5 | import { |
6 | cleanupTests, | |
7 | flushAndRunMultipleServers, | |
8 | flushAndRunServer, killallServers, reRunServer, | |
9 | ServerInfo, | |
10 | waitUntilLog | |
11 | } from '../../../shared/extra-utils/server/servers' | |
12 | import { | |
13 | addVideoCommentReply, | |
14 | addVideoCommentThread, deleteVideoComment, | |
15 | getPluginTestPath, | |
16 | installPlugin, removeVideo, | |
17 | setAccessTokensToServers, | |
18 | updateVideo, | |
19 | uploadVideo, | |
20 | viewVideo | |
21 | } from '../../../shared/extra-utils' | |
9b474844 C |
22 | |
23 | const expect = chai.expect | |
24 | ||
09071200 | 25 | describe('Test plugin action hooks', function () { |
89cd1275 C |
26 | let servers: ServerInfo[] |
27 | let videoUUID: string | |
28 | let threadId: number | |
29 | ||
30 | function checkHook (hook: string) { | |
31 | return waitUntilLog(servers[0], 'Run hook ' + hook) | |
32 | } | |
9b474844 C |
33 | |
34 | before(async function () { | |
35 | this.timeout(30000) | |
9b474844 | 36 | |
89cd1275 C |
37 | servers = await flushAndRunMultipleServers(2) |
38 | await setAccessTokensToServers(servers) | |
39 | ||
40 | await installPlugin({ | |
41 | url: servers[0].url, | |
42 | accessToken: servers[0].accessToken, | |
43 | path: getPluginTestPath() | |
44 | }) | |
45 | ||
587568e1 | 46 | killallServers([ servers[0] ]) |
89cd1275 C |
47 | |
48 | await reRunServer(servers[0]) | |
9b474844 C |
49 | }) |
50 | ||
89cd1275 C |
51 | it('Should run action:application.listening', async function () { |
52 | await checkHook('action:application.listening') | |
53 | }) | |
54 | ||
55 | it('Should run action:api.video.uploaded', async function () { | |
56 | const res = await uploadVideo(servers[0].url, servers[0].accessToken, { name: 'video' }) | |
57 | videoUUID = res.body.video.uuid | |
58 | ||
59 | await checkHook('action:api.video.uploaded') | |
60 | }) | |
61 | ||
62 | it('Should run action:api.video.updated', async function () { | |
63 | await updateVideo(servers[0].url, servers[0].accessToken, videoUUID, { name: 'video updated' }) | |
64 | ||
65 | await checkHook('action:api.video.updated') | |
66 | }) | |
67 | ||
68 | it('Should run action:api.video.viewed', async function () { | |
69 | await viewVideo(servers[0].url, videoUUID) | |
70 | ||
71 | await checkHook('action:api.video.viewed') | |
72 | }) | |
73 | ||
74 | it('Should run action:api.video-thread.created', async function () { | |
75 | const res = await addVideoCommentThread(servers[0].url, servers[0].accessToken, videoUUID, 'thread') | |
76 | threadId = res.body.comment.id | |
77 | ||
78 | await checkHook('action:api.video-thread.created') | |
79 | }) | |
80 | ||
81 | it('Should run action:api.video-comment-reply.created', async function () { | |
82 | await addVideoCommentReply(servers[0].url, servers[0].accessToken, videoUUID, threadId, 'reply') | |
83 | ||
84 | await checkHook('action:api.video-comment-reply.created') | |
85 | }) | |
86 | ||
87 | it('Should run action:api.video-comment.deleted', async function () { | |
88 | await deleteVideoComment(servers[0].url, servers[0].accessToken, videoUUID, threadId) | |
89 | ||
90 | await checkHook('action:api.video-comment.deleted') | |
91 | }) | |
92 | ||
93 | it('Should run action:api.video.deleted', async function () { | |
94 | await removeVideo(servers[0].url, servers[0].accessToken, videoUUID) | |
95 | ||
96 | await checkHook('action:api.video.deleted') | |
9b474844 C |
97 | }) |
98 | ||
99 | after(async function () { | |
89cd1275 | 100 | await cleanupTests(servers) |
9b474844 C |
101 | }) |
102 | }) |