aboutsummaryrefslogtreecommitdiffhomepage
path: root/server
diff options
context:
space:
mode:
authorRigel Kent <sendmemail@rigelk.eu>2020-07-27 17:00:39 +0200
committerRigel Kent <par@rigelk.eu>2020-07-29 18:15:53 +0200
commit7b3909644dd7cb8be1caad537bb40605e5f059d4 (patch)
tree499d23362c0532cd689624a35b98d8f51ba73ed4 /server
parent225a7682e68d81c3c90ff50e704db4ab5f81a341 (diff)
downloadPeerTube-7b3909644dd7cb8be1caad537bb40605e5f059d4.tar.gz
PeerTube-7b3909644dd7cb8be1caad537bb40605e5f059d4.tar.zst
PeerTube-7b3909644dd7cb8be1caad537bb40605e5f059d4.zip
test search for subscriptions and video-channels
Diffstat (limited to 'server')
-rw-r--r--server/controllers/api/search.ts4
-rw-r--r--server/middlewares/validators/search.ts4
-rw-r--r--server/tests/api/users/user-subscriptions.ts32
-rw-r--r--server/tests/api/videos/video-channels.ts26
4 files changed, 60 insertions, 6 deletions
diff --git a/server/controllers/api/search.ts b/server/controllers/api/search.ts
index 2d98b5d34..6e2d11d93 100644
--- a/server/controllers/api/search.ts
+++ b/server/controllers/api/search.ts
@@ -22,7 +22,7 @@ import {
22 setDefaultPagination, 22 setDefaultPagination,
23 setDefaultSearchSort, 23 setDefaultSearchSort,
24 videoChannelsSearchSortValidator, 24 videoChannelsSearchSortValidator,
25 videoChannelsSearchValidator, 25 videoChannelsListSearchValidator,
26 videosSearchSortValidator, 26 videosSearchSortValidator,
27 videosSearchValidator 27 videosSearchValidator
28} from '../../middlewares' 28} from '../../middlewares'
@@ -49,7 +49,7 @@ searchRouter.get('/video-channels',
49 videoChannelsSearchSortValidator, 49 videoChannelsSearchSortValidator,
50 setDefaultSearchSort, 50 setDefaultSearchSort,
51 optionalAuthenticate, 51 optionalAuthenticate,
52 videoChannelsSearchValidator, 52 videoChannelsListSearchValidator,
53 asyncMiddleware(searchVideoChannels) 53 asyncMiddleware(searchVideoChannels)
54) 54)
55 55
diff --git a/server/middlewares/validators/search.ts b/server/middlewares/validators/search.ts
index 7313bc055..78213c70d 100644
--- a/server/middlewares/validators/search.ts
+++ b/server/middlewares/validators/search.ts
@@ -28,7 +28,7 @@ const videosSearchValidator = [
28 } 28 }
29] 29]
30 30
31const videoChannelsSearchValidator = [ 31const videoChannelsListSearchValidator = [
32 query('search').not().isEmpty().withMessage('Should have a valid search'), 32 query('search').not().isEmpty().withMessage('Should have a valid search'),
33 query('searchTarget').optional().custom(isSearchTargetValid).withMessage('Should have a valid search target'), 33 query('searchTarget').optional().custom(isSearchTargetValid).withMessage('Should have a valid search target'),
34 34
@@ -57,6 +57,6 @@ const videoChannelsOwnSearchValidator = [
57 57
58export { 58export {
59 videosSearchValidator, 59 videosSearchValidator,
60 videoChannelsSearchValidator, 60 videoChannelsListSearchValidator,
61 videoChannelsOwnSearchValidator 61 videoChannelsOwnSearchValidator
62} 62}
diff --git a/server/tests/api/users/user-subscriptions.ts b/server/tests/api/users/user-subscriptions.ts
index 7d6b0c6a9..60676a37b 100644
--- a/server/tests/api/users/user-subscriptions.ts
+++ b/server/tests/api/users/user-subscriptions.ts
@@ -96,14 +96,14 @@ describe('Test users subscriptions', function () {
96 96
97 it('Should list subscriptions', async function () { 97 it('Should list subscriptions', async function () {
98 { 98 {
99 const res = await listUserSubscriptions(servers[0].url, servers[0].accessToken) 99 const res = await listUserSubscriptions({ url: servers[0].url, token: servers[0].accessToken })
100 expect(res.body.total).to.equal(0) 100 expect(res.body.total).to.equal(0)
101 expect(res.body.data).to.be.an('array') 101 expect(res.body.data).to.be.an('array')
102 expect(res.body.data).to.have.lengthOf(0) 102 expect(res.body.data).to.have.lengthOf(0)
103 } 103 }
104 104
105 { 105 {
106 const res = await listUserSubscriptions(servers[0].url, users[0].accessToken, 'createdAt') 106 const res = await listUserSubscriptions({ url: servers[0].url, token: users[0].accessToken, sort: 'createdAt' })
107 expect(res.body.total).to.equal(2) 107 expect(res.body.total).to.equal(2)
108 108
109 const subscriptions: VideoChannel[] = res.body.data 109 const subscriptions: VideoChannel[] = res.body.data
@@ -156,6 +156,34 @@ describe('Test users subscriptions', function () {
156 expect(body['user3_channel@localhost:' + servers[0].port]).to.be.false 156 expect(body['user3_channel@localhost:' + servers[0].port]).to.be.false
157 }) 157 })
158 158
159 it('Should search among subscriptions', async function () {
160 {
161 const res = await listUserSubscriptions({
162 url: servers[0].url,
163 token: users[0].accessToken,
164 sort: '-createdAt',
165 search: 'user3_channel'
166 })
167 expect(res.body.total).to.equal(1)
168
169 const subscriptions = res.body.data
170 expect(subscriptions).to.have.lengthOf(1)
171 }
172
173 {
174 const res = await listUserSubscriptions({
175 url: servers[0].url,
176 token: users[0].accessToken,
177 sort: '-createdAt',
178 search: 'toto'
179 })
180 expect(res.body.total).to.equal(0)
181
182 const subscriptions = res.body.data
183 expect(subscriptions).to.have.lengthOf(0)
184 }
185 })
186
159 it('Should list subscription videos', async function () { 187 it('Should list subscription videos', async function () {
160 { 188 {
161 const res = await listUserSubscriptionVideos(servers[0].url, servers[0].accessToken) 189 const res = await listUserSubscriptionVideos(servers[0].url, servers[0].accessToken)
diff --git a/server/tests/api/videos/video-channels.ts b/server/tests/api/videos/video-channels.ts
index 3493a723d..367f99fdd 100644
--- a/server/tests/api/videos/video-channels.ts
+++ b/server/tests/api/videos/video-channels.ts
@@ -421,6 +421,32 @@ describe('Test video channels', function () {
421 expect(totoChannel.videosCount).to.equal(0) 421 expect(totoChannel.videosCount).to.equal(0)
422 }) 422 })
423 423
424 it('Should search among account video channels', async function () {
425 {
426 const res = await getAccountVideoChannelsList({
427 url: servers[0].url,
428 accountName: userInfo.account.name + '@' + userInfo.account.host,
429 search: 'root'
430 })
431 expect(res.body.total).to.equal(1)
432
433 const channels = res.body.data
434 expect(channels).to.have.lengthOf(1)
435 }
436
437 {
438 const res = await getAccountVideoChannelsList({
439 url: servers[0].url,
440 accountName: userInfo.account.name + '@' + userInfo.account.host,
441 search: 'does not exist'
442 })
443 expect(res.body.total).to.equal(0)
444
445 const channels = res.body.data
446 expect(channels).to.have.lengthOf(0)
447 }
448 })
449
424 after(async function () { 450 after(async function () {
425 await cleanupTests(servers) 451 await cleanupTests(servers)
426 }) 452 })