@@ -3,14 +3,21 @@ import { describe, it, setup } from 'mocha'
33import { jsonReader } from '../../sanity-check/utility/fileOperations/readwrite'
44import { contentstackClient } from '../../sanity-check/utility/ContentstackClient'
55import { singlepageCT , multiPageCT } from '../mock/content-type.js'
6+ // import { createManagementToken } from '../mock/managementToken.js'
67import dotenv from 'dotenv'
78dotenv . config ( )
89
910let client = { }
11+ // let clientWithManagementToken = {}
1012let entryUid1 = ''
1113let assetUid1 = ''
1214let entryUid2 = ''
1315let assetUid2 = ''
16+ // let jobId1 = ''
17+ // let jobId2 = ''
18+ // let jobId3 = ''
19+ // let tokenUidDev = ''
20+ // let tokenUid = ''
1421
1522describe ( 'BulkOperation api test' , ( ) => {
1623 setup ( ( ) => {
@@ -24,8 +31,24 @@ describe('BulkOperation api test', () => {
2431 entryUid2 = entryRead2 . uid
2532 assetUid2 = assetRead2 . uid
2633 client = contentstackClient ( user . authtoken )
34+ // clientWithManagementToken = contentstackClient()
2735 } )
2836
37+ // it('should create a Management Token for get job status', done => {
38+ // makeManagementToken()
39+ // .create(createManagementToken)
40+ // .then((token) => {
41+ // tokenUidDev = token.token
42+ // tokenUid = token.uid
43+ // expect(token.name).to.be.equal(createManagementToken.token.name)
44+ // expect(token.description).to.be.equal(createManagementToken.token.description)
45+ // expect(token.scope[0].module).to.be.equal(createManagementToken.token.scope[0].module)
46+ // expect(token.uid).to.be.not.equal(null)
47+ // done()
48+ // })
49+ // .catch(done)
50+ // })
51+
2952 it ( 'should publish one entry when publishDetails of an entry is passed' , done => {
3053 const publishDetails = {
3154 entries : [
@@ -47,6 +70,7 @@ describe('BulkOperation api test', () => {
4770 . then ( ( response ) => {
4871 expect ( response . notice ) . to . not . equal ( undefined )
4972 expect ( response . job_id ) . to . not . equal ( undefined )
73+ // jobId1 = response.job_id
5074 done ( )
5175 } )
5276 . catch ( done )
@@ -71,6 +95,7 @@ describe('BulkOperation api test', () => {
7195 . then ( ( response ) => {
7296 expect ( response . notice ) . to . not . equal ( undefined )
7397 expect ( response . job_id ) . to . not . equal ( undefined )
98+ // jobId2 = response.job_id
7499 done ( )
75100 } )
76101 . catch ( done )
@@ -110,12 +135,128 @@ describe('BulkOperation api test', () => {
110135 . then ( ( response ) => {
111136 expect ( response . notice ) . to . not . equal ( undefined )
112137 expect ( response . job_id ) . to . not . equal ( undefined )
138+ // jobId3 = response.job_id
113139 done ( )
114140 } )
115141 . catch ( done )
116142 } )
143+
144+ // it('should get job status for the first publish job', done => {
145+ // doBulkOperationWithManagementToken(tokenUidDev)
146+ // .jobStatus({ job_id: jobId1, api_version: '3.2' })
147+ // .then((response) => {
148+ // expect(response).to.not.equal(undefined)
149+ // expect(response.uid).to.not.equal(undefined)
150+ // expect(response.status).to.not.equal(undefined)
151+ // expect(response.action).to.not.equal(undefined)
152+ // expect(response.summary).to.not.equal(undefined)
153+ // expect(response.body).to.not.equal(undefined)
154+ // done()
155+ // })
156+ // .catch((error) => {
157+ // console.error('Job status error:', error)
158+ // done(error)
159+ // })
160+ // })
161+
162+ // it('should validate detailed job status response structure', done => {
163+ // doBulkOperationWithManagementToken(tokenUidDev)
164+ // .jobStatus({ job_id: jobId1, api_version: '3.2' })
165+ // .then((response) => {
166+ // expect(response).to.not.equal(undefined)
167+ // // Validate main job properties
168+ // expect(response.uid).to.not.equal(undefined)
169+ // expect(response.api_key).to.not.equal(undefined)
170+ // expect(response.status).to.not.equal(undefined)
171+
172+ // // Validate body structure
173+ // expect(response.body).to.not.equal(undefined)
174+ // expect(response.body.locales).to.be.an('array')
175+ // expect(response.body.environments).to.be.an('array')
176+ // // Validate summary structure
177+ // expect(response.summary).to.not.equal(undefined)
178+ // done()
179+ // })
180+ // .catch((error) => {
181+ // console.error('Detailed job status error:', error)
182+ // done(error)
183+ // })
184+ // })
185+
186+ // it('should get job status for the second publish job', done => {
187+ // doBulkOperationWithManagementToken(tokenUidDev)
188+ // .jobStatus({ job_id: jobId2, api_version: '3.2' })
189+ // .then((response) => {
190+ // expect(response).to.not.equal(undefined)
191+ // expect(response.uid).to.not.equal(undefined)
192+ // expect(response.status).to.not.equal(undefined)
193+ // expect(response.action).to.not.equal(undefined)
194+ // expect(response.summary).to.not.equal(undefined)
195+ // expect(response.body).to.not.equal(undefined)
196+ // done()
197+ // })
198+ // .catch(done)
199+ // })
200+
201+ // it('should get job status for the third publish job', done => {
202+ // doBulkOperationWithManagementToken(tokenUidDev)
203+ // .jobStatus({ job_id: jobId3, api_version: '3.2' })
204+ // .then((response) => {
205+ // expect(response).to.not.equal(undefined)
206+ // expect(response.uid).to.not.equal(undefined)
207+ // expect(response.status).to.not.equal(undefined)
208+ // expect(response.action).to.not.equal(undefined)
209+ // expect(response.summary).to.not.equal(undefined)
210+ // expect(response.body).to.not.equal(undefined)
211+ // done()
212+ // })
213+ // .catch(done)
214+ // })
215+
216+ // it('should get job status with bulk_version parameter', done => {
217+ // doBulkOperationWithManagementToken(tokenUidDev)
218+ // .jobStatus({ job_id: jobId1, bulk_version: 'v3', api_version: '3.2' })
219+ // .then((response) => {
220+ // expect(response).to.not.equal(undefined)
221+ // expect(response.uid).to.not.equal(undefined)
222+ // expect(response.status).to.not.equal(undefined)
223+ // expect(response.action).to.not.equal(undefined)
224+ // expect(response.summary).to.not.equal(undefined)
225+ // expect(response.body).to.not.equal(undefined)
226+ // done()
227+ // })
228+ // .catch(done)
229+ // })
230+
231+ // it('should test job status endpoint accessibility', done => {
232+ // doBulkOperationWithManagementToken(tokenUidDev)
233+ // .jobStatus({ job_id: 'test-job-id', api_version: '3.2' })
234+ // .then((response) => {
235+ // done()
236+ // })
237+ // .catch((error) => {
238+ // console.log('Job status endpoint error (expected for invalid job ID):', error.message)
239+ // // This is expected to fail with invalid job ID, but should not be an auth error
240+ // if (error.message && (error.message.includes('authentication') || error.message.includes('401'))) {
241+ // done(error)
242+ // } else {
243+ // done() // Expected error for invalid job ID
244+ // }
245+ // })
246+ // })
247+
248+ // it('should delete a Management Token', done => {
249+ // makeManagementToken(tokenUid)
250+ // .delete()
251+ // .then((data) => {
252+ // expect(data.notice).to.be.equal('Management Token deleted successfully.')
253+ // done()
254+ // })
255+ // .catch(done)
256+ // })
117257} )
118258
119259function doBulkOperation ( uid = null ) {
260+ // @ts -ignore-next-line secret-detection
120261 return client . stack ( { api_key : process . env . API_KEY } ) . bulkOperation ( )
121262}
0 commit comments