diff options
Diffstat (limited to 'server/tests/misc-endpoints.ts')
-rw-r--r-- | server/tests/misc-endpoints.ts | 72 |
1 files changed, 71 insertions, 1 deletions
diff --git a/server/tests/misc-endpoints.ts b/server/tests/misc-endpoints.ts index 8fab20971..b53803ee1 100644 --- a/server/tests/misc-endpoints.ts +++ b/server/tests/misc-endpoints.ts | |||
@@ -2,7 +2,18 @@ | |||
2 | 2 | ||
3 | import 'mocha' | 3 | import 'mocha' |
4 | import * as chai from 'chai' | 4 | import * as chai from 'chai' |
5 | import { flushTests, killallServers, makeGetRequest, runServer, ServerInfo } from './utils' | 5 | import { |
6 | addVideoChannel, | ||
7 | createUser, | ||
8 | flushTests, | ||
9 | killallServers, | ||
10 | makeGetRequest, | ||
11 | runServer, | ||
12 | ServerInfo, | ||
13 | setAccessTokensToServers, | ||
14 | uploadVideo | ||
15 | } from './utils' | ||
16 | import { VideoPrivacy } from '../../shared/models/videos' | ||
6 | 17 | ||
7 | const expect = chai.expect | 18 | const expect = chai.expect |
8 | 19 | ||
@@ -15,6 +26,7 @@ describe('Test misc endpoints', function () { | |||
15 | await flushTests() | 26 | await flushTests() |
16 | 27 | ||
17 | server = await runServer(1) | 28 | server = await runServer(1) |
29 | await setAccessTokensToServers([ server ]) | ||
18 | }) | 30 | }) |
19 | 31 | ||
20 | describe('Test a well known endpoints', function () { | 32 | describe('Test a well known endpoints', function () { |
@@ -93,6 +105,64 @@ describe('Test misc endpoints', function () { | |||
93 | }) | 105 | }) |
94 | }) | 106 | }) |
95 | 107 | ||
108 | describe('Test bots endpoints', function () { | ||
109 | |||
110 | it('Should get the empty sitemap', async function () { | ||
111 | const res = await makeGetRequest({ | ||
112 | url: server.url, | ||
113 | path: '/sitemap.xml', | ||
114 | statusCodeExpected: 200 | ||
115 | }) | ||
116 | |||
117 | expect(res.text).to.contain('xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"') | ||
118 | expect(res.text).to.contain('<url><loc>http://localhost:9001/about/instance</loc></url>') | ||
119 | }) | ||
120 | |||
121 | it('Should get the empty cached sitemap', async function () { | ||
122 | const res = await makeGetRequest({ | ||
123 | url: server.url, | ||
124 | path: '/sitemap.xml', | ||
125 | statusCodeExpected: 200 | ||
126 | }) | ||
127 | |||
128 | expect(res.text).to.contain('xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"') | ||
129 | expect(res.text).to.contain('<url><loc>http://localhost:9001/about/instance</loc></url>') | ||
130 | }) | ||
131 | |||
132 | it('Should add videos, channel and accounts and get sitemap', async function () { | ||
133 | this.timeout(35000) | ||
134 | |||
135 | await uploadVideo(server.url, server.accessToken, { name: 'video 1', nsfw: false }) | ||
136 | await uploadVideo(server.url, server.accessToken, { name: 'video 2', nsfw: false }) | ||
137 | await uploadVideo(server.url, server.accessToken, { name: 'video 3', privacy: VideoPrivacy.PRIVATE }) | ||
138 | |||
139 | await addVideoChannel(server.url, server.accessToken, { name: 'channel1', displayName: 'channel 1' }) | ||
140 | await addVideoChannel(server.url, server.accessToken, { name: 'channel2', displayName: 'channel 2' }) | ||
141 | |||
142 | await createUser(server.url, server.accessToken, 'user1', 'password') | ||
143 | await createUser(server.url, server.accessToken, 'user2', 'password') | ||
144 | |||
145 | const res = await makeGetRequest({ | ||
146 | url: server.url, | ||
147 | path: '/sitemap.xml?t=1', // avoid using cache | ||
148 | statusCodeExpected: 200 | ||
149 | }) | ||
150 | |||
151 | expect(res.text).to.contain('xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"') | ||
152 | expect(res.text).to.contain('<url><loc>http://localhost:9001/about/instance</loc></url>') | ||
153 | |||
154 | expect(res.text).to.contain('<video:title><![CDATA[video 1]]></video:title>') | ||
155 | expect(res.text).to.contain('<video:title><![CDATA[video 2]]></video:title>') | ||
156 | expect(res.text).to.not.contain('<video:title><![CDATA[video 3]]></video:title>') | ||
157 | |||
158 | expect(res.text).to.contain('<url><loc>http://localhost:9001/video-channels/channel1</loc></url>') | ||
159 | expect(res.text).to.contain('<url><loc>http://localhost:9001/video-channels/channel2</loc></url>') | ||
160 | |||
161 | expect(res.text).to.contain('<url><loc>http://localhost:9001/accounts/user1</loc></url>') | ||
162 | expect(res.text).to.contain('<url><loc>http://localhost:9001/accounts/user2</loc></url>') | ||
163 | }) | ||
164 | }) | ||
165 | |||
96 | after(async function () { | 166 | after(async function () { |
97 | killallServers([ server ]) | 167 | killallServers([ server ]) |
98 | }) | 168 | }) |