+ it('Should block a user', async function () {
+ const resUser = await createUser({
+ url: server.url,
+ accessToken: server.accessToken,
+ username: user16.username,
+ password: user16.password
+ })
+ user16Id = resUser.body.user.id
+
+ user16AccessToken = await userLogin(server, user16)
+
+ await getMyUserInformation(server.url, user16AccessToken, 200)
+ await blockUser(server.url, user16Id, server.accessToken)
+
+ await getMyUserInformation(server.url, user16AccessToken, 401)
+ await userLogin(server, user16, 400)
+ })
+
+ it('Should search user by banned status', async function () {
+ {
+ const res = await getUsersListPaginationAndSort(server.url, server.accessToken, 0, 2, 'createdAt', undefined, true)
+ const users = res.body.data as User[]
+
+ expect(res.body.total).to.equal(1)
+ expect(users.length).to.equal(1)
+
+ expect(users[0].username).to.equal(user16.username)
+ }
+
+ {
+ const res = await getUsersListPaginationAndSort(server.url, server.accessToken, 0, 2, 'createdAt', undefined, false)
+ const users = res.body.data as User[]
+
+ expect(res.body.total).to.equal(1)
+ expect(users.length).to.equal(1)
+
+ expect(users[0].username).to.not.equal(user16.username)
+ }
+ })
+
+ it('Should unblock a user', async function () {
+ await unblockUser(server.url, user16Id, server.accessToken)
+ user16AccessToken = await userLogin(server, user16)
+ await getMyUserInformation(server.url, user16AccessToken, 200)
+ })
+ })
+
+ describe('User stats', function () {
+ let user17Id
+ let user17AccessToken
+
+ it('Should report correct initial statistics about a user', async function () {
+ const user17 = {
+ username: 'user_17',
+ password: 'my super password'
+ }
+ const resUser = await createUser({
+ url: server.url,
+ accessToken: server.accessToken,
+ username: user17.username,
+ password: user17.password
+ })
+
+ user17Id = resUser.body.user.id
+ user17AccessToken = await userLogin(server, user17)
+
+ const res = await getUserInformation(server.url, server.accessToken, user17Id, true)
+ const user: User = res.body
+
+ expect(user.videosCount).to.equal(0)
+ expect(user.videoCommentsCount).to.equal(0)
+ expect(user.abusesCount).to.equal(0)
+ expect(user.abusesCreatedCount).to.equal(0)
+ expect(user.abusesAcceptedCount).to.equal(0)
+ })