mirror of
https://github.com/immich-app/immich
synced 2025-10-17 18:19:27 +00:00
51 lines
1.3 KiB
TypeScript
51 lines
1.3 KiB
TypeScript
import {
|
|
deleteAssets,
|
|
getAuditFiles,
|
|
updateAsset,
|
|
type LoginResponseDto,
|
|
} from '@immich/sdk';
|
|
import { apiUtils, asBearerAuth, dbUtils, fileUtils } from 'src/utils';
|
|
import { beforeAll, describe, expect, it } from 'vitest';
|
|
|
|
describe('/audit', () => {
|
|
let admin: LoginResponseDto;
|
|
|
|
beforeAll(async () => {
|
|
apiUtils.setup();
|
|
await dbUtils.reset();
|
|
await fileUtils.reset();
|
|
|
|
admin = await apiUtils.adminSetup();
|
|
});
|
|
|
|
describe('GET :/file-report', () => {
|
|
it('excludes assets without issues from report', async () => {
|
|
const [trashedAsset, archivedAsset, _] = await Promise.all([
|
|
apiUtils.createAsset(admin.accessToken),
|
|
apiUtils.createAsset(admin.accessToken),
|
|
apiUtils.createAsset(admin.accessToken),
|
|
]);
|
|
|
|
await Promise.all([
|
|
deleteAssets(
|
|
{ assetBulkDeleteDto: { ids: [trashedAsset.id] } },
|
|
{ headers: asBearerAuth(admin.accessToken) }
|
|
),
|
|
updateAsset(
|
|
{
|
|
id: archivedAsset.id,
|
|
updateAssetDto: { isArchived: true },
|
|
},
|
|
{ headers: asBearerAuth(admin.accessToken) }
|
|
),
|
|
]);
|
|
|
|
const body = await getAuditFiles({
|
|
headers: asBearerAuth(admin.accessToken),
|
|
});
|
|
|
|
expect(body.orphans).toHaveLength(0);
|
|
expect(body.extras).toHaveLength(0);
|
|
});
|
|
});
|
|
});
|