diff --git a/test/utils/DayEventLayout.test.js b/test/utils/DayEventLayout.test.js index 959fa4abb8..5ff8c14145 100644 --- a/test/utils/DayEventLayout.test.js +++ b/test/utils/DayEventLayout.test.js @@ -11,6 +11,7 @@ describe('getStyledEvents', () => { describe('matrix', () => { function compare(title, events, expectedResults) { it(title, () => { + events.forEach((event, index) => (event.id = index)) const styledEvents = getStyledEvents({ events, startAccessor: 'start', @@ -18,6 +19,7 @@ describe('getStyledEvents', () => { slotMetrics, minimumStartDifference: 10, }) + styledEvents.sort((a, b) => a.event.id - b.event.id) const results = styledEvents.map(result => ({ width: Math.floor(result.style.width), xOffset: Math.floor(result.style.xOffset), @@ -89,6 +91,23 @@ describe('getStyledEvents', () => { { width: 33, xOffset: 66 }, ], ], + [ + 'complex events spanning multiple containers', + [ + { start: d(8, 15), end: d(13, 15) }, + { start: d(8, 45), end: d(14) }, + { start: d(10, 45), end: d(17) }, + { start: d(14), end: d(20) }, + { start: d(15, 30), end: d(20, 30) }, + ], + [ + { width: 56, xOffset: 0 }, + { width: 56, xOffset: 33 }, + { width: 33, xOffset: 66 }, + { width: 85, xOffset: 0 }, + { width: 50, xOffset: 50 }, + ], + ], ] toCheck.forEach(args => compare(...args)) })