mirror of
https://github.com/immich-app/immich.git
synced 2025-01-16 00:36:47 +01:00
fix(server): asset no longer has tags (#12350)
This commit is contained in:
parent
f26d47c8d9
commit
ce2349d496
2 changed files with 11 additions and 5 deletions
|
@ -496,6 +496,15 @@ describe(MetadataService.name, () => {
|
|||
});
|
||||
});
|
||||
|
||||
it('should remove existing tags', async () => {
|
||||
assetMock.getByIds.mockResolvedValue([assetStub.image]);
|
||||
metadataMock.readTags.mockResolvedValue({});
|
||||
|
||||
await sut.handleMetadataExtraction({ id: assetStub.image.id });
|
||||
|
||||
expect(tagMock.upsertAssetTags).toHaveBeenCalledWith({ assetId: 'asset-id', tagIds: [] });
|
||||
});
|
||||
|
||||
it('should not apply motion photos if asset is video', async () => {
|
||||
assetMock.getByIds.mockResolvedValue([{ ...assetStub.livePhotoMotionAsset, isVisible: true }]);
|
||||
mediaMock.probe.mockResolvedValue(probeStub.matroskaContainer);
|
||||
|
|
|
@ -381,11 +381,8 @@ export class MetadataService {
|
|||
tags.push(...keywords);
|
||||
}
|
||||
|
||||
if (tags.length > 0) {
|
||||
const results = await upsertTags(this.tagRepository, { userId: asset.ownerId, tags: tags.map(String) });
|
||||
const tagIds = results.map((tag) => tag.id);
|
||||
await this.tagRepository.upsertAssetTags({ assetId: asset.id, tagIds });
|
||||
}
|
||||
const results = await upsertTags(this.tagRepository, { userId: asset.ownerId, tags: tags.map(String) });
|
||||
await this.tagRepository.upsertAssetTags({ assetId: asset.id, tagIds: results.map((tag) => tag.id) });
|
||||
}
|
||||
|
||||
private async applyMotionPhotos(asset: AssetEntity, tags: ImmichTags) {
|
||||
|
|
Loading…
Reference in a new issue