@@ -6,6 +6,7 @@ import { makeLink } from '../utils'
66
77describe ( 'Release Api v2' , ( ) => {
88 let entry : EntryProps
9+ let secondEntry : EntryProps
910 let release : ReleaseProps
1011 let createReleaseClient : PlainClientAPI
1112
@@ -29,6 +30,17 @@ describe('Release Api v2', () => {
2930 }
3031 )
3132
33+ secondEntry = await createReleaseClient . entry . create (
34+ { ...defaultParams , contentTypeId : TestDefaults . contentType . withCrossSpaceReferenceId } ,
35+ {
36+ fields : {
37+ title : {
38+ 'en-US' : 'Second Test Entry for Release' ,
39+ } ,
40+ } ,
41+ }
42+ )
43+
3244 release = await createReleaseClient . release . create ( defaultParams , {
3345 title : 'Test Release' ,
3446 entities : {
@@ -38,6 +50,10 @@ describe('Release Api v2', () => {
3850 entity : makeLink ( 'Entry' , entry . sys . id ) ,
3951 action : 'publish' ,
4052 } ,
53+ {
54+ entity : makeLink ( 'Entry' , secondEntry . sys . id ) ,
55+ action : 'publish' ,
56+ } ,
4157 ] ,
4258 } ,
4359 } )
@@ -51,22 +67,15 @@ describe('Release Api v2', () => {
5167 await createReleaseClient . entry . delete ( {
5268 entryId : entry . sys . id ,
5369 } )
70+ await createReleaseClient . entry . delete ( {
71+ entryId : secondEntry . sys . id ,
72+ } )
5473 await timeoutToCalmRateLimiting ( )
5574 } )
5675
5776 describe ( 'releaseSchemaVersion is provided as a default in client' , ( ) => {
58- let clientWithSchemaDefault : PlainClientAPI
59- beforeEach ( ( ) => {
60- const defaultParams = {
61- environmentId : TestDefaults . environmentId ,
62- spaceId : TestDefaults . spaceId ,
63- releaseSchemaVersion : 'Release.v2' ,
64- }
65- clientWithSchemaDefault = initPlainClient ( defaultParams )
66- } )
67-
6877 it ( 'release.create works' , async ( ) => {
69- const newRelease = await clientWithSchemaDefault . release . create (
78+ const newRelease = await createReleaseClient . release . create (
7079 {
7180 environmentId : TestDefaults . environmentId ,
7281 spaceId : TestDefaults . spaceId ,
@@ -83,20 +92,20 @@ describe('Release Api v2', () => {
8392 )
8493 expect ( newRelease . sys . schemaVersion ) . toEqual ( 'Release.v2' )
8594 // cleanup
86- await clientWithSchemaDefault . release . delete ( {
95+ await createReleaseClient . release . delete ( {
8796 releaseId : newRelease . sys . id ,
8897 } )
8998 } )
9099
91100 it ( 'release.query works' , async ( ) => {
92- const releases = await clientWithSchemaDefault . release . query ( { } )
101+ const releases = await createReleaseClient . release . query ( { } )
93102 const fetchedRelease = releases . items . find ( ( item ) => item . sys . id === release . sys . id )
94- expect ( fetchedRelease ) . toEqual ( release )
103+ expect ( fetchedRelease ?. sys . id ) . toEqual ( release ?. sys . id )
95104 expect ( releases . pages ) . toStrictEqual ( { } )
96105 } )
97106
98107 it ( 'release.update works' , async ( ) => {
99- const updatedRelease = await clientWithSchemaDefault . release . update (
108+ const updatedRelease = await createReleaseClient . release . update (
100109 {
101110 environmentId : TestDefaults . environmentId ,
102111 spaceId : TestDefaults . spaceId ,
@@ -111,13 +120,11 @@ describe('Release Api v2', () => {
111120 } ,
112121 items : [
113122 {
114- entity : {
115- sys : {
116- type : 'Link' ,
117- linkType : 'Entry' ,
118- id : entry . sys . id ,
119- } ,
120- } ,
123+ entity : makeLink ( 'Entry' , entry . sys . id ) ,
124+ action : 'publish' ,
125+ } ,
126+ {
127+ entity : makeLink ( 'Entry' , secondEntry . sys . id ) ,
121128 action : 'publish' ,
122129 } ,
123130 ] ,
@@ -129,7 +136,7 @@ describe('Release Api v2', () => {
129136 } )
130137
131138 it ( 'release.entry.get works' , async ( ) => {
132- const entryInSpace = await clientWithSchemaDefault . release . entry . get ( {
139+ const entryInSpace = await createReleaseClient . release . entry . get ( {
133140 releaseId : release . sys . id ,
134141 entryId : entry . sys . id , // Using the same ID for simplicity
135142 environmentId : TestDefaults . environmentId ,
@@ -138,6 +145,23 @@ describe('Release Api v2', () => {
138145 expect ( entryInSpace . sys . id ) . toEqual ( entry . sys . id )
139146 expect ( entryInSpace . sys . release . sys . id ) . toEqual ( release . sys . id )
140147 } )
148+
149+ it ( 'release.entry.getMany works' , async ( ) => {
150+ const response = await createReleaseClient . release . entry . getMany ( {
151+ releaseId : release . sys . id ,
152+
153+ environmentId : TestDefaults . environmentId ,
154+ spaceId : TestDefaults . spaceId ,
155+ } )
156+
157+ const entries = response . items as EntryProps [ ]
158+ const foundFirstEntry = entries . find ( ( e ) => e . sys . id === entry . sys . id )
159+ const foundSecondEntry = entries . find ( ( e ) => e . sys . id === secondEntry . sys . id )
160+
161+ expect ( entries . length ) . toEqual ( 2 )
162+ expect ( foundFirstEntry ?. sys . id ) . toEqual ( entry . sys . id )
163+ expect ( foundSecondEntry ?. sys . id ) . toEqual ( secondEntry . sys . id )
164+ } )
141165 } )
142166
143167 describe ( 'releaseSchemaVersion is not provided as a default' , ( ) => {
@@ -192,13 +216,11 @@ describe('Release Api v2', () => {
192216 } ,
193217 items : [
194218 {
195- entity : {
196- sys : {
197- type : 'Link' ,
198- linkType : 'Entry' ,
199- id : entry . sys . id ,
200- } ,
201- } ,
219+ entity : makeLink ( 'Entry' , entry . sys . id ) ,
220+ action : 'publish' ,
221+ } ,
222+ {
223+ entity : makeLink ( 'Entry' , secondEntry . sys . id ) ,
202224 action : 'publish' ,
203225 } ,
204226 ] ,
0 commit comments