diff --git a/src/scan.ts b/src/scan.ts index 94328845..bc1ba4e6 100644 --- a/src/scan.ts +++ b/src/scan.ts @@ -84,7 +84,10 @@ export class ImageRepositoryScanner implements Lifecycle { private async addNewFile(filename: string) { logger.debug(`adding new image ${filename}`); const metadata = await this.getFileMetadata(filename); - const newImage = new Image({ filename, ...metadata }); + const newImage = new Image({ + filename, + ...metadata, + }); logger.trace(newImage, "image data"); await newImage.save(); } diff --git a/src/tools/updatefilemetadata.test.ts b/src/tools/updatefilemetadata.test.ts index 0d3b29b5..eefb8993 100644 --- a/src/tools/updatefilemetadata.test.ts +++ b/src/tools/updatefilemetadata.test.ts @@ -15,9 +15,9 @@ describe("updateFileMetadata", () => { const goodImageId = await getGoodImageId(); const image = await Image.findById(goodImageId); expect(image).toBeDefined(); - - expect(image?.description_from_exif).toBe(true); if (!image) throw new Error("image is undefined"); + expect(image.description).toBe("blarg"); + expect(image.description_from_exif).toBe(true); image.description_from_exif = false; await image.save(); diff --git a/src/tools/updatefilemetadata.ts b/src/tools/updatefilemetadata.ts index 8dcd5e9a..11b2cf24 100644 --- a/src/tools/updatefilemetadata.ts +++ b/src/tools/updatefilemetadata.ts @@ -31,12 +31,13 @@ export const updateFileMetadata = async (fs: FilesystemRepository) => { const limit = pLimit(4); const promises = images - .filter((image) => image.deleted === false) + .filter((image) => !image.deleted) + .filter((image) => !image.description_from_exif) .filter((image) => image.description != null && image.description !== "") .map((image) => limit(async () => { const base = image.filename; - logger.info(`Updating description for ${base}`); + console.log(`Updating description for ${base}`); const retval = await fs.updateImageDescription( base, image.description ?? "", diff --git a/test_resources/test_DSC_7020.jpg b/test_resources/test_DSC_7020.jpg index b7dec568..96dc7722 100644 Binary files a/test_resources/test_DSC_7020.jpg and b/test_resources/test_DSC_7020.jpg differ