From b8557ad9b0c7334bf184e52639d24bf53fdbc5e6 Mon Sep 17 00:00:00 2001 From: "Patrik J. Braun" Date: Sat, 8 Feb 2020 16:31:29 +0100 Subject: [PATCH] fixing date issue #136 --- src/backend/model/threading/MetadataLoader.ts | 3 ++- test/backend/assets/date_issue.jpg | Bin 0 -> 1980 bytes test/backend/assets/date_issue.json | 17 +++++++++++++++++ .../model/threading/DiskMangerWorker.spec.ts | 6 +++--- .../model/threading/MetaDataLoader.spec.ts | 6 ++++++ 5 files changed, 28 insertions(+), 4 deletions(-) create mode 100644 test/backend/assets/date_issue.jpg create mode 100644 test/backend/assets/date_issue.json diff --git a/src/backend/model/threading/MetadataLoader.ts b/src/backend/model/threading/MetadataLoader.ts index dd089a8..e95b734 100644 --- a/src/backend/model/threading/MetadataLoader.ts +++ b/src/backend/model/threading/MetadataLoader.ts @@ -142,7 +142,8 @@ export class MetadataLoader { } if (exif.tags.CreateDate || exif.tags.DateTimeOriginal || exif.tags.ModifyDate) { - metadata.creationDate = (exif.tags.CreateDate || exif.tags.DateTimeOriginal || exif.tags.ModifyDate) * 1000; + metadata.creationDate = (exif.tags.DateTimeOriginal || exif.tags.CreateDate || exif.tags.ModifyDate) * 1000; + } if (exif.tags.Orientation) { diff --git a/test/backend/assets/date_issue.jpg b/test/backend/assets/date_issue.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c605d0975746c309b8f33edc25ba7ad2152ee1ec GIT binary patch literal 1980 zcmeHGOK=ob6us}g{!dSm$xLF16Ec&J8K{uz?lhBRO3O+xA)#bJ6j65pM8XabiIgrF z1){5D{2^6V4KaRTVHL*Urz{IJBD$~&6i9Gm{6J)35q>HQ+xvRDd(@S%ql(*o=bi4p z_r81XoaanCKS0@vp1vL+gg`G|;LM6$-9v*L09LMq#Q>myN=ktulF@gNG8dO1&XRIq zxDvd8RD3l<5CktiKiueJYGc$;@9NGq-F*OsHL*Os#yV=(Re0aF2un)O{%@q0;49hY`nA>{{i+nmF1o-4Aak&YEGRP6o z3cHYVIU3abEvI_DmjUFo;Qh7S({3)#gZ!2E_c9G5Pl{ag)aNHR=b4Z7BYDxsR3EGG zYtrU%=H+4|0aAa&wLj_a};9ChD{}imwH6ZkNwDTvf1;Id`{3AEg z!++c_TnDHN+7C5uP6+WP9)nhj&imx~d~M-tu~&S;9f{8$_b%#+9xLjKe)BI~kzkIe zX)tTL&aLLF#ao?e=X+QNiX_RBsK~Ocs*0w^!g?sAFDQ?e#%ii-7uHnAc+B-7K?(6PZ-rKk0fd^MVwC3SQ z9$mNou?>%J9Ne_^iEU4AA9`xXv(N3?y=VCO7jiGY^ztjO?tN|F*c;<-zV-Gy2M)eB z@&4rD4?g_p_5CB$cqXB6J*Yd(Cz3fB8W*-D(_q+4{VOsSv!?j*XaI3N7ee){)-iB zx17)_8|>M}c}~q`_Wy`wZ;Dw!tjOyu=nQ2aVG+0&rp6{x&J4H;qlEC=GbS=_60#Fz z31x?_s3BERG!&s0*0hk0CaWc-VZDT7S7DgVv+&jxS>X{kX8%xF-ED=z { Config.Server.Media.folder = path.join(__dirname, '/../../../assets'); ProjectPath.ImageFolder = path.join(__dirname, '/../../../assets'); const dir = await DiskMangerWorker.scanDirectory('/'); - expect(dir.media.length).to.be.equals(4); + expect(dir.media.length).to.be.equals(5); const expected = require(path.join(__dirname, '/../../../assets/test image öüóőúéáű-.,.json')); - expect(Utils.clone(dir.media[1].name)).to.be.deep.equal('test image öüóőúéáű-.,.jpg'); - expect(Utils.clone(dir.media[1].metadata)).to.be.deep.equal(expected); + expect(Utils.clone(dir.media[2].name)).to.be.deep.equal('test image öüóőúéáű-.,.jpg'); + expect(Utils.clone(dir.media[2].metadata)).to.be.deep.equal(expected); }); }); diff --git a/test/backend/unit/model/threading/MetaDataLoader.spec.ts b/test/backend/unit/model/threading/MetaDataLoader.spec.ts index 1884410..8687e87 100644 --- a/test/backend/unit/model/threading/MetaDataLoader.spec.ts +++ b/test/backend/unit/model/threading/MetaDataLoader.spec.ts @@ -24,6 +24,12 @@ describe('MetadataLoader', () => { expect(Utils.clone(data)).to.be.deep.equal(expected); }); + it('should load miss dated jpg', async () => { + const data = await MetadataLoader.loadPhotoMetadata(path.join(__dirname, '/../../../assets/date_issue.jpg')); + const expected = require(path.join(__dirname, '/../../../assets/date_issue.json')); + expect(Utils.clone(data)).to.be.deep.equal(expected); + }); + it('should load jpg 2', async () => { const data = await MetadataLoader.loadPhotoMetadata(path.join(__dirname, '/../../../assets/old_photo.jpg'));