From dff840c49bdda46ccbb2029893de7ac27f7602c2 Mon Sep 17 00:00:00 2001 From: James Date: Mon, 16 Jan 2023 21:05:40 -0500 Subject: [PATCH] chore: adds version count tests --- test/versions/int.spec.ts | 55 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/test/versions/int.spec.ts b/test/versions/int.spec.ts index f3a3658df..e45107d44 100644 --- a/test/versions/int.spec.ts +++ b/test/versions/int.spec.ts @@ -256,6 +256,61 @@ describe('Versions', () => { expect(draftPost.title.es).toBe(spanishTitle); }); }); + + describe('Draft Count', () => { + it('creates proper number of drafts', async () => { + const originalDraft = await payload.create({ + collection: 'draft-posts', + draft: true, + data: { + title: 'A', + description: 'A', + _status: 'draft', + }, + }); + + await payload.update({ + collection: 'draft-posts', + id: originalDraft.id, + draft: true, + data: { + title: 'B', + description: 'B', + _status: 'draft', + }, + }); + + await payload.update({ + collection: 'draft-posts', + id: originalDraft.id, + draft: true, + data: { + title: 'C', + description: 'C', + _status: 'draft', + }, + }); + + const mostRecentDraft = await payload.findByID({ + collection: 'draft-posts', + id: originalDraft.id, + draft: true, + }); + + expect(mostRecentDraft.title).toStrictEqual('C'); + + const versions = await payload.findVersions({ + collection: 'draft-posts', + where: { + parent: { + equals: originalDraft.id, + }, + }, + }); + + expect(versions.docs).toHaveLength(3); + }); + }); }); describe('Querying', () => {