From 2406dcbaae565db7d49995dabdb4bd09fb19fe4d Mon Sep 17 00:00:00 2001 From: Jack Reed <phillipjreed@gmail.com> Date: Mon, 27 Apr 2020 12:17:53 -0600 Subject: [PATCH] Guard against a contentResource not being defined --- __tests__/src/components/OpenSeadragonViewer.test.js | 11 ++++------- src/components/OpenSeadragonViewer.js | 1 + 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/__tests__/src/components/OpenSeadragonViewer.test.js b/__tests__/src/components/OpenSeadragonViewer.test.js index f0c303113..1c8f04186 100644 --- a/__tests__/src/components/OpenSeadragonViewer.test.js +++ b/__tests__/src/components/OpenSeadragonViewer.test.js @@ -201,15 +201,12 @@ describe('OpenSeadragonViewer', () => { wrapper.instance().refreshTileProperties(); - expect(setOpacity).toHaveBeenCalledTimes(2); + expect(setOpacity).toHaveBeenCalledTimes(1); expect(setOpacity.mock.calls[0]).toEqual([0.5]); - expect(setOpacity.mock.calls[1]).toEqual([0.5]); - expect(setItemIndex).toHaveBeenCalledTimes(2); - expect(setItemIndex.mock.calls[0][0].source.id).toEqual(0); - expect(setItemIndex.mock.calls[0][1]).toEqual(1); - expect(setItemIndex.mock.calls[1][0].source.id).toEqual(1); - expect(setItemIndex.mock.calls[1][1]).toEqual(0); + expect(setItemIndex).toHaveBeenCalledTimes(1); + expect(setItemIndex.mock.calls[0][0].source.id).toEqual(1); + expect(setItemIndex.mock.calls[0][1]).toEqual(0); }); }); diff --git a/src/components/OpenSeadragonViewer.js b/src/components/OpenSeadragonViewer.js index 3ab53dbbf..eb1050a1a 100644 --- a/src/components/OpenSeadragonViewer.js +++ b/src/components/OpenSeadragonViewer.js @@ -275,6 +275,7 @@ export class OpenSeadragonViewer extends Component { items.forEach((item, i) => { const contentResource = canvasWorld.contentResource(item.source['@id'] || item.source.id); + if (!contentResource) return; const newIndex = canvasWorld.layerIndexOfImageResource(contentResource); if (i !== newIndex) world.setItemIndex(item, newIndex); item.setOpacity(canvasWorld.layerOpacityOfImageResource(contentResource)); -- GitLab