fix(server): update asset with tagged people (#4000)

This commit is contained in:
Jason Rasmussen 2023-09-06 16:51:09 -04:00 committed by GitHub
parent c1f4fe65bb
commit 15bfceb05a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 31 additions and 2 deletions

View file

@ -149,7 +149,9 @@ export class AssetRepository implements IAssetRepository {
owner: true,
smartInfo: true,
tags: true,
faces: true,
faces: {
person: true,
},
},
});
}

View file

@ -1,4 +1,4 @@
import { IAssetRepository, LoginResponseDto } from '@app/domain';
import { IAssetRepository, IFaceRepository, IPersonRepository, LoginResponseDto } from '@app/domain';
import { AppModule, AssetController } from '@app/immich';
import { AssetEntity, AssetType } from '@app/infra/entities';
import { INestApplication } from '@nestjs/common';
@ -132,5 +132,32 @@ describe(`${AssetController.name} (e2e)`, () => {
});
expect(status).toEqual(200);
});
it('should return tagged people', async () => {
const personRepository = app.get<IPersonRepository>(IPersonRepository);
const person = await personRepository.create({ ownerId: asset1.ownerId, name: 'Test Person' });
const faceRepository = app.get<IFaceRepository>(IFaceRepository);
await faceRepository.create({ assetId: asset1.id, personId: person.id });
const { status, body } = await request(server)
.put(`/asset/${asset1.id}`)
.set('Authorization', `Bearer ${user1.accessToken}`)
.send({ isFavorite: true });
expect(status).toEqual(200);
expect(body).toMatchObject({
id: asset1.id,
isFavorite: true,
people: [
{
birthDate: null,
id: expect.any(String),
isHidden: false,
name: 'Test Person',
thumbnailPath: '',
},
],
});
});
});
});