UNPKG

sanity

Version:

Sanity is a real-time content infrastructure with a scalable, hosted backend featuring a Graph Oriented Query Language (GROQ), asset pipelines and fast edge caches

250 lines (245 loc) • 6.98 kB
import {type Chunk} from 'sanity' import {describe, expect, it} from 'vitest' import {addChunksMetadata} from './utils' const chunks: Chunk[] = [ { index: 6, id: 'z2633zRhBXUPVFxuhOgS3I', type: 'publish', start: 5, end: 6, startTimestamp: '2024-09-02T09:28:49.734Z', endTimestamp: '2024-09-02T09:28:49.734Z', authors: new Set(['author1']), draftState: 'missing', publishedState: 'present', }, { index: 5, id: '319b9969-9134-43db-912b-cf3c0082c2bc', type: 'editDraft', start: 1, end: 5, startTimestamp: '2024-09-02T09:28:34.522Z', endTimestamp: '2024-09-02T09:28:39.049Z', authors: new Set(['author1']), draftState: 'present', publishedState: 'present', }, { index: 4, id: '0181e905-db87-4a71-9b8d-dc61c3281686', type: 'editDraft', start: -1, end: 1, startTimestamp: '2024-08-29T12:28:01.286194Z', endTimestamp: '2024-08-29T12:28:03.508054Z', authors: new Set(['author2']), draftState: 'present', publishedState: 'present', }, { index: 3, id: 'oizpdYkKQhBxlL6mF9cm6g', type: 'publish', start: -2, end: -1, startTimestamp: '2024-08-28T07:42:56.954657Z', endTimestamp: '2024-08-28T07:42:56.954657Z', authors: new Set(['author3']), draftState: 'missing', publishedState: 'present', }, { index: 2, id: '058afb19-b9f2-416a-b6a0-e02600f22d5c', type: 'editDraft', start: -5, end: -2, startTimestamp: '2024-08-21T18:50:46.872241Z', endTimestamp: '2024-08-21T18:50:50.921116Z', authors: new Set(['author1']), draftState: 'present', publishedState: 'unknown', }, { index: 1, id: 'a319e276-8fcb-463c-ad88-cc40d9bed20e', type: 'editDraft', start: -7, end: -5, startTimestamp: '2024-08-21T01:21:44.156523Z', endTimestamp: '2024-08-21T01:21:45.599240Z', authors: new Set(['author2']), draftState: 'present', publishedState: 'unknown', }, { index: 0, id: '1dc76dd9-c852-4e5d-b2a1-a4e0ea6bad9c', type: 'editDraft', start: -9, end: -7, startTimestamp: '2024-08-20T16:15:45.198871Z', endTimestamp: '2024-08-20T16:15:47.960919Z', authors: new Set(['author3']), draftState: 'present', publishedState: 'unknown', }, { index: -1, id: '@initial', type: 'initial', start: -9, end: -9, startTimestamp: '2024-08-20T16:15:45.198871Z', endTimestamp: '2024-08-20T16:15:45.198871Z', authors: new Set(['author0']), draftState: 'present', publishedState: 'unknown', }, ] describe('Tests addChunksMetadata', () => { it('should collapse the editDraft chunks into the single publish chunk', () => { const collapsedChunks = addChunksMetadata(chunks) expect(collapsedChunks).toMatchInlineSnapshot(` [ { "authors": Set { "author1", }, "children": [ "319b9969-9134-43db-912b-cf3c0082c2bc", "0181e905-db87-4a71-9b8d-dc61c3281686", ], "collaborators": Set { "author1", "author2", }, "draftState": "missing", "end": 6, "endTimestamp": "2024-09-02T09:28:49.734Z", "id": "z2633zRhBXUPVFxuhOgS3I", "index": 6, "publishedState": "present", "start": 5, "startTimestamp": "2024-09-02T09:28:49.734Z", "type": "publish", }, { "authors": Set { "author1", }, "draftState": "present", "end": 5, "endTimestamp": "2024-09-02T09:28:39.049Z", "id": "319b9969-9134-43db-912b-cf3c0082c2bc", "index": 5, "parentId": "z2633zRhBXUPVFxuhOgS3I", "publishedState": "present", "start": 1, "startTimestamp": "2024-09-02T09:28:34.522Z", "type": "editDraft", }, { "authors": Set { "author2", }, "draftState": "present", "end": 1, "endTimestamp": "2024-08-29T12:28:03.508054Z", "id": "0181e905-db87-4a71-9b8d-dc61c3281686", "index": 4, "parentId": "z2633zRhBXUPVFxuhOgS3I", "publishedState": "present", "start": -1, "startTimestamp": "2024-08-29T12:28:01.286194Z", "type": "editDraft", }, { "authors": Set { "author3", }, "children": [ "058afb19-b9f2-416a-b6a0-e02600f22d5c", "a319e276-8fcb-463c-ad88-cc40d9bed20e", "1dc76dd9-c852-4e5d-b2a1-a4e0ea6bad9c", ], "collaborators": Set { "author1", "author2", "author3", }, "draftState": "missing", "end": -1, "endTimestamp": "2024-08-28T07:42:56.954657Z", "id": "oizpdYkKQhBxlL6mF9cm6g", "index": 3, "publishedState": "present", "start": -2, "startTimestamp": "2024-08-28T07:42:56.954657Z", "type": "publish", }, { "authors": Set { "author1", }, "draftState": "present", "end": -2, "endTimestamp": "2024-08-21T18:50:50.921116Z", "id": "058afb19-b9f2-416a-b6a0-e02600f22d5c", "index": 2, "parentId": "oizpdYkKQhBxlL6mF9cm6g", "publishedState": "unknown", "start": -5, "startTimestamp": "2024-08-21T18:50:46.872241Z", "type": "editDraft", }, { "authors": Set { "author2", }, "draftState": "present", "end": -5, "endTimestamp": "2024-08-21T01:21:45.599240Z", "id": "a319e276-8fcb-463c-ad88-cc40d9bed20e", "index": 1, "parentId": "oizpdYkKQhBxlL6mF9cm6g", "publishedState": "unknown", "start": -7, "startTimestamp": "2024-08-21T01:21:44.156523Z", "type": "editDraft", }, { "authors": Set { "author3", }, "draftState": "present", "end": -7, "endTimestamp": "2024-08-20T16:15:47.960919Z", "id": "1dc76dd9-c852-4e5d-b2a1-a4e0ea6bad9c", "index": 0, "parentId": "oizpdYkKQhBxlL6mF9cm6g", "publishedState": "unknown", "start": -9, "startTimestamp": "2024-08-20T16:15:45.198871Z", "type": "editDraft", }, { "authors": Set { "author0", }, "draftState": "present", "end": -9, "endTimestamp": "2024-08-20T16:15:45.198871Z", "id": "@initial", "index": -1, "publishedState": "unknown", "start": -9, "startTimestamp": "2024-08-20T16:15:45.198871Z", "type": "initial", }, ] `) }) })