]>
Commit | Line | Data |
---|---|---|
f05a1c30 C |
1 | /* tslint:disable:no-unused-expression */ |
2 | ||
32b2b43c | 3 | import { expect } from 'chai' |
f05a1c30 C |
4 | import { existsSync } from 'fs' |
5 | import { join } from 'path' | |
32b2b43c | 6 | import { Account } from '../../../../shared/models/actors' |
f05a1c30 C |
7 | import { readdirPromise } from '../../../helpers/core-utils' |
8 | import { root } from '../index' | |
265ba139 C |
9 | import { makeGetRequest } from '../requests/requests' |
10 | ||
11 | function getAccountsList (url: string, sort = '-createdAt', statusCodeExpected = 200) { | |
12 | const path = '/api/v1/accounts' | |
13 | ||
14 | return makeGetRequest({ | |
15 | url, | |
16 | query: { sort }, | |
17 | path, | |
18 | statusCodeExpected | |
19 | }) | |
20 | } | |
21 | ||
ad9e39fb C |
22 | function getAccount (url: string, accountName: string, statusCodeExpected = 200) { |
23 | const path = '/api/v1/accounts/' + accountName | |
265ba139 C |
24 | |
25 | return makeGetRequest({ | |
26 | url, | |
27 | path, | |
28 | statusCodeExpected | |
29 | }) | |
30 | } | |
31 | ||
32b2b43c C |
32 | async function expectAccountFollows (url: string, nameWithDomain: string, followersCount: number, followingCount: number) { |
33 | const res = await getAccountsList(url) | |
34 | const account = res.body.data.find((a: Account) => a.name + '@' + a.host === nameWithDomain) | |
35 | ||
36 | const message = `${nameWithDomain} on ${url}` | |
37 | expect(account.followersCount).to.equal(followersCount, message) | |
38 | expect(account.followingCount).to.equal(followingCount, message) | |
39 | } | |
40 | ||
f05a1c30 C |
41 | async function checkActorFilesWereRemoved (actorUUID: string, serverNumber: number) { |
42 | const testDirectory = 'test' + serverNumber | |
43 | ||
44 | for (const directory of [ 'avatars' ]) { | |
45 | const directoryPath = join(root(), testDirectory, directory) | |
46 | ||
47 | const directoryExists = existsSync(directoryPath) | |
48 | expect(directoryExists).to.be.true | |
49 | ||
50 | const files = await readdirPromise(directoryPath) | |
51 | for (const file of files) { | |
52 | expect(file).to.not.contain(actorUUID) | |
53 | } | |
54 | } | |
55 | } | |
56 | ||
265ba139 C |
57 | // --------------------------------------------------------------------------- |
58 | ||
59 | export { | |
60 | getAccount, | |
32b2b43c | 61 | expectAccountFollows, |
f05a1c30 C |
62 | getAccountsList, |
63 | checkActorFilesWereRemoved | |
265ba139 | 64 | } |