Skip to content

Commit 48b7b1d

Browse files
committed
Package dependencies updated test folder restored
1 parent 41c3373 commit 48b7b1d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

73 files changed

+13738
-2215
lines changed

package-lock.json

Lines changed: 2699 additions & 2195 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -46,52 +46,52 @@
4646
"author": "Contentstack",
4747
"license": "MIT",
4848
"dependencies": {
49-
"axios": "^0.21.4",
49+
"axios": "^0.27.2",
5050
"form-data": "^3.0.1",
5151
"lodash": "^4.17.21",
52-
"qs": "^6.10.2"
52+
"qs": "^6.10.3"
5353
},
5454
"keywords": [
5555
"contentstack management api",
5656
"contentstack",
5757
"management api"
5858
],
5959
"devDependencies": {
60-
"@babel/cli": "^7.16.0",
61-
"@babel/core": "^7.16.0",
62-
"@babel/plugin-transform-runtime": "^7.16.4",
63-
"@babel/preset-env": "^7.16.4",
64-
"@babel/register": "^7.16.0",
65-
"@babel/runtime": "^7.16.3",
60+
"@babel/cli": "^7.17.10",
61+
"@babel/core": "^7.18.2",
62+
"@babel/plugin-transform-runtime": "^7.18.2",
63+
"@babel/preset-env": "^7.18.2",
64+
"@babel/register": "^7.17.7",
65+
"@babel/runtime": "^7.18.3",
6666
"@types/mocha": "^7.0.2",
67-
"axios-mock-adapter": "^1.20.0",
68-
"babel-loader": "^8.2.3",
67+
"axios-mock-adapter": "^1.21.1",
68+
"babel-loader": "^8.2.5",
6969
"babel-plugin-add-module-exports": "^1.0.4",
7070
"babel-plugin-rewire": "^1.2.0",
7171
"babel-plugin-transform-es2015-modules-commonjs": "^6.26.2",
7272
"babel-polyfill": "^6.26.0",
73-
"chai": "^4.3.4",
73+
"chai": "^4.3.6",
7474
"clean-webpack-plugin": "^4.0.0",
7575
"docdash": "^1.2.0",
7676
"dotenv": "^8.6.0",
77-
"eslint": "^8.4.1",
77+
"eslint": "^8.16.0",
7878
"eslint-config-standard": "^13.0.1",
79-
"eslint-plugin-import": "^2.25.3",
79+
"eslint-plugin-import": "^2.26.0",
8080
"eslint-plugin-node": "^9.1.0",
8181
"eslint-plugin-promise": "^4.3.1",
8282
"eslint-plugin-standard": "^4.1.0",
83-
"jsdoc": "^3.6.7",
84-
"mocha": "^9.1.3",
85-
"mochawesome": "^6.3.1",
86-
"multiparty": "^4.2.2",
83+
"jsdoc": "^3.6.10",
84+
"mocha": "^9.2.2",
85+
"mochawesome": "^7.1.3",
86+
"multiparty": "^4.2.3",
8787
"nock": "^10.0.6",
88-
"nyc": "^14.1.1",
88+
"nyc": "^15.1.0",
8989
"os-browserify": "^0.3.0",
9090
"rimraf": "^2.7.1",
9191
"sinon": "^7.3.2",
9292
"string-replace-loader": "^2.3.0",
93-
"webpack": "^5.65.0",
94-
"webpack-cli": "^4.9.1",
93+
"webpack": "^5.72.1",
94+
"webpack-cli": "^4.9.2",
9595
"webpack-merge": "4.1.0"
9696
},
9797
"homepage": "https://www.contentstack.com"

test/api/asset-test.js

Lines changed: 177 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,177 @@
1+
import path from 'path'
2+
import { expect } from 'chai'
3+
import { describe, it, setup } from 'mocha'
4+
import { jsonReader } from '../utility/fileOperations/readwrite'
5+
import { contentstackClient } from '../utility/ContentstackClient.js'
6+
7+
var client = {}
8+
var stack = {}
9+
10+
var folderUID = ''
11+
var assetUID = ''
12+
var publishAssetUID = ''
13+
describe('Assets api Test', () => {
14+
setup(() => {
15+
const user = jsonReader('loggedinuser.json')
16+
stack = jsonReader('stack.json')
17+
client = contentstackClient(user.authtoken)
18+
})
19+
20+
it('Asset Upload ', done => {
21+
const asset = {
22+
upload: path.join(__dirname, './mock/customUpload.html'),
23+
title: 'customasset',
24+
description: 'Custom Asset Desc',
25+
tags: ['Custom']
26+
}
27+
makeAsset().create(asset)
28+
.then((asset) => {
29+
assetUID = asset.uid
30+
expect(asset.uid).to.be.not.equal(null)
31+
expect(asset.url).to.be.not.equal(null)
32+
expect(asset.filename).to.be.equal('customUpload.html')
33+
expect(asset.title).to.be.equal('customasset')
34+
expect(asset.description).to.be.equal('Custom Asset Desc')
35+
expect(asset.content_type).to.be.equal('text/html')
36+
done()
37+
})
38+
.catch(done)
39+
})
40+
41+
it('Create folder ', done => {
42+
makeAsset().folder().create({ asset: { name: 'Sample Folder' } })
43+
.then((asset) => {
44+
folderUID = asset.uid
45+
expect(asset.uid).to.be.not.equal(null)
46+
expect(asset.name).to.be.equal('Sample Folder')
47+
expect(asset.is_dir).to.be.equal(true)
48+
done()
49+
})
50+
.catch(done)
51+
})
52+
53+
it('Asset Upload in folder', done => {
54+
const asset = {
55+
upload: path.join(__dirname, './mock/customUpload.html'),
56+
title: 'customasset in Folder',
57+
description: 'Custom Asset Desc in Folder',
58+
parent_uid: folderUID,
59+
tags: 'folder'
60+
}
61+
makeAsset().create(asset)
62+
.then((asset) => {
63+
publishAssetUID = asset.uid
64+
expect(asset.uid).to.be.not.equal(null)
65+
expect(asset.url).to.be.not.equal(null)
66+
expect(asset.filename).to.be.equal('customUpload.html')
67+
expect(asset.title).to.be.equal('customasset in Folder')
68+
expect(asset.description).to.be.equal('Custom Asset Desc in Folder')
69+
expect(asset.content_type).to.be.equal('text/html')
70+
expect(asset.parent_uid).to.be.equal(folderUID)
71+
done()
72+
})
73+
.catch(done)
74+
})
75+
it('Replace asset ', done => {
76+
const asset = {
77+
upload: path.join(__dirname, './mock/upload.html')
78+
}
79+
makeAsset(assetUID)
80+
.replace(asset)
81+
.then((asset) => {
82+
expect(asset.uid).to.be.equal(assetUID)
83+
expect(asset.filename).to.be.equal('upload.html')
84+
expect(asset.content_type).to.be.equal('text/html')
85+
done()
86+
})
87+
.catch(done)
88+
})
89+
90+
it('Fetch and Update asset details', done => {
91+
makeAsset(assetUID)
92+
.fetch()
93+
.then((asset) => {
94+
asset.title = 'Update title'
95+
asset.description = 'Update description'
96+
delete asset.ACL
97+
return asset.update()
98+
})
99+
.then((asset) => {
100+
expect(asset.uid).to.be.equal(assetUID)
101+
expect(asset.title).to.be.equal('Update title')
102+
expect(asset.description).to.be.equal('Update description')
103+
done()
104+
})
105+
.catch(done)
106+
})
107+
108+
it('Publish Asset', done => {
109+
makeAsset(publishAssetUID)
110+
.publish({ publishDetails: {
111+
locales: ['hi-in', 'en-us'],
112+
environments: ['development']
113+
} })
114+
.then((data) => {
115+
expect(data.notice).to.be.equal('Asset sent for publishing.')
116+
done()
117+
})
118+
.catch(done)
119+
})
120+
121+
it('Unpublish Asset', done => {
122+
makeAsset(publishAssetUID)
123+
.unpublish({ publishDetails: {
124+
locales: ['hi-in', 'en-us'],
125+
environments: ['development']
126+
} })
127+
.then((data) => {
128+
expect(data.notice).to.be.equal('Asset sent for unpublishing.')
129+
done()
130+
})
131+
.catch(done)
132+
})
133+
134+
it('Delete asset', done => {
135+
makeAsset(assetUID)
136+
.delete()
137+
.then((data) => {
138+
expect(data.notice).to.be.equal('Asset deleted successfully.')
139+
done()
140+
})
141+
.catch(done)
142+
})
143+
144+
it('Query to fetch all asset', done => {
145+
makeAsset()
146+
.query()
147+
.find()
148+
.then((collection) => {
149+
collection.items.forEach((asset) => {
150+
expect(asset.uid).to.be.not.equal(null)
151+
expect(asset.title).to.be.not.equal(null)
152+
expect(asset.description).to.be.not.equal(null)
153+
})
154+
done()
155+
})
156+
.catch(done)
157+
})
158+
159+
it('Query to fetch title match asset', done => {
160+
makeAsset()
161+
.query({ query: { title: 'Update title' } })
162+
.find()
163+
.then((collection) => {
164+
collection.items.forEach((asset) => {
165+
expect(asset.uid).to.be.not.equal(null)
166+
expect(asset.title).to.be.equal('Update title')
167+
expect(asset.description).to.be.equal('Update description')
168+
})
169+
done()
170+
})
171+
.catch(done)
172+
})
173+
})
174+
175+
function makeAsset (uid = null) {
176+
return client.stack({ api_key: stack.api_key }).asset(uid)
177+
}

test/api/branch-test.js

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
import { expect } from 'chai'
2+
import { describe, it, setup } from 'mocha'
3+
import { jsonReader } from '../utility/fileOperations/readwrite'
4+
import { contentstackClient } from '../utility/ContentstackClient.js'
5+
import { branch, devBranch } from './mock/branch'
6+
7+
var client = {}
8+
var stack = {}
9+
10+
describe('Branch api Test', () => {
11+
setup(() => {
12+
const user = jsonReader('loggedinuser.json')
13+
stack = jsonReader('stack.json')
14+
client = contentstackClient(user.authtoken)
15+
})
16+
17+
it('Branch query should return master branch', done => {
18+
makeBranch()
19+
.query()
20+
.find()
21+
.then((response) => {
22+
expect(response.items.length).to.be.equal(1)
23+
var item = response.items[0]
24+
expect(item.urlPath).to.be.equal(`/stacks/branches/${item.uid}`)
25+
expect(item.delete).to.not.equal(undefined)
26+
expect(item.fetch).to.not.equal(undefined)
27+
done()
28+
})
29+
.catch(done)
30+
})
31+
32+
it('Should create Branch', done => {
33+
makeBranch()
34+
.create({ branch })
35+
.then((response) => {
36+
expect(response.uid).to.be.equal(branch.uid)
37+
expect(response.urlPath).to.be.equal(`/stacks/branches/${branch.uid}`)
38+
expect(response.source).to.be.equal(branch.source)
39+
expect(response.alias).to.not.equal(undefined)
40+
expect(response.delete).to.not.equal(undefined)
41+
expect(response.fetch).to.not.equal(undefined)
42+
done()
43+
})
44+
.catch(done)
45+
})
46+
47+
it('Should create Branch from staging', done => {
48+
makeBranch()
49+
.create({ branch: devBranch })
50+
.then((response) => {
51+
expect(response.uid).to.be.equal(devBranch.uid)
52+
expect(response.urlPath).to.be.equal(`/stacks/branches/${devBranch.uid}`)
53+
expect(response.source).to.be.equal(devBranch.source)
54+
expect(response.alias).to.not.equal(undefined)
55+
expect(response.delete).to.not.equal(undefined)
56+
expect(response.fetch).to.not.equal(undefined)
57+
done()
58+
})
59+
.catch(done)
60+
})
61+
62+
it('Should fetch branch from branch uid', done => {
63+
makeBranch(devBranch.uid)
64+
.fetch()
65+
.then((response) => {
66+
expect(response.uid).to.be.equal(devBranch.uid)
67+
expect(response.urlPath).to.be.equal(`/stacks/branches/${devBranch.uid}`)
68+
expect(response.source).to.be.equal(devBranch.source)
69+
expect(response.alias).to.not.equal(undefined)
70+
expect(response.delete).to.not.equal(undefined)
71+
expect(response.fetch).to.not.equal(undefined)
72+
done()
73+
})
74+
.catch(done)
75+
})
76+
77+
it('Branch query should return all branches', done => {
78+
makeBranch()
79+
.query()
80+
.find()
81+
.then((response) => {
82+
expect(response.items.length).to.be.equal(3)
83+
response.items.forEach(item => {
84+
expect(item.urlPath).to.be.equal(`/stacks/branches/${item.uid}`)
85+
expect(item.delete).to.not.equal(undefined)
86+
expect(item.fetch).to.not.equal(undefined)
87+
})
88+
done()
89+
})
90+
.catch(done)
91+
})
92+
93+
it('Branch query for specific condition', done => {
94+
makeBranch()
95+
.query({ query: { source: 'master' } })
96+
.find()
97+
.then((response) => {
98+
expect(response.items.length).to.be.equal(1)
99+
response.items.forEach(item => {
100+
expect(item.urlPath).to.be.equal(`/stacks/branches/${item.uid}`)
101+
expect(item.source).to.be.equal(`master`)
102+
expect(item.delete).to.not.equal(undefined)
103+
expect(item.fetch).to.not.equal(undefined)
104+
})
105+
done()
106+
})
107+
.catch(done)
108+
})
109+
110+
it('Should delete branch from branch uid', done => {
111+
makeBranch(devBranch.uid)
112+
.delete()
113+
.then((response) => {
114+
expect(response.notice).to.be.equal('Branch deleted successfully.')
115+
done()
116+
})
117+
.catch(done)
118+
})
119+
})
120+
121+
function makeBranch (uid = null) {
122+
return client.stack({ api_key: stack.api_key }).branch(uid)
123+
}

0 commit comments

Comments
 (0)