Skip to content

Commit 5d7a7e5

Browse files
added unit test cases
1 parent 463e284 commit 5d7a7e5

File tree

2 files changed

+101
-10
lines changed

2 files changed

+101
-10
lines changed

test/sanity-check/api/entryVariants-test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -137,8 +137,8 @@ describe("Entry Variants api Test", () => {
137137
makeEntry()
138138
.entry(entryUid, { api_version: "3.2" })
139139
.unpublish({
140-
publishDetails: publishVariantEntryFirst.entry,
141-
locale: publishVariantEntryFirst.locale,
140+
publishDetails: unpublishVariantEntryFirst.entry,
141+
locale: unpublishVariantEntryFirst.locale,
142142
})
143143
.then((data) => {
144144
expect(data.notice).to.be.equal(

test/unit/variants-entry-test.js

Lines changed: 99 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,17 @@ import {
66
Variants,
77
VariantsCollection,
88
} from "../../lib/stack/contentType/entry/variants/";
9-
import { checkSystemFields, varinatsEntryMock, variantEntryVersion } from "./mock/objects";
9+
import { Entry } from "../../lib/stack/contentType/entry/";
10+
import {
11+
checkSystemFields,
12+
varinatsEntryMock,
13+
variantEntryVersion,
14+
} from "./mock/objects";
15+
import { systemUidMock, noticeMock } from "./mock/objects";
1016

1117
describe("Contentstack Variants entry test", () => {
1218
it("Variants entry test without uid", (done) => {
13-
const entry = makeEntry({
19+
const entry = makeEntryVariants({
1420
content_type_uid: "content_type_uid",
1521
entry_uid: "UID",
1622
});
@@ -26,7 +32,7 @@ describe("Contentstack Variants entry test", () => {
2632
});
2733

2834
it("Variants entry test with uid", (done) => {
29-
const entry = makeEntry({
35+
const entry = makeEntryVariants({
3036
content_type_uid: "content_type_uid",
3137
entry_uid: "UID",
3238
});
@@ -58,7 +64,10 @@ describe("Contentstack Variants entry test", () => {
5864
.reply(200, {
5965
entries: [varinatsEntryMock],
6066
});
61-
makeEntry({ content_type_uid: "content_type_uid", entry_uid: "UID" })
67+
makeEntryVariants({
68+
content_type_uid: "content_type_uid",
69+
entry_uid: "UID",
70+
})
6271
.query()
6372
.find()
6473
.then((entry) => {
@@ -79,7 +88,7 @@ describe("Contentstack Variants entry test", () => {
7988
...varinatsEntryMock,
8089
},
8190
});
82-
makeEntry({
91+
makeEntryVariants({
8392
content_type_uid: "content_type_uid",
8493
entry_uid: "UID",
8594
variants_uid: "variants_uid",
@@ -98,9 +107,9 @@ describe("Contentstack Variants entry test", () => {
98107
"/content_types/content_type_uid/entries/UID/variants/variants_uid/versions"
99108
)
100109
.reply(200, {
101-
...variantEntryVersion,
110+
...variantEntryVersion,
102111
});
103-
makeEntry({
112+
makeEntryVariants({
104113
content_type_uid: "content_type_uid",
105114
entry_uid: "UID",
106115
variants_uid: "variants_uid",
@@ -112,12 +121,94 @@ describe("Contentstack Variants entry test", () => {
112121
})
113122
.catch(done);
114123
});
124+
125+
it("Entry publish test", (done) => {
126+
var mock = new MockAdapter(Axios);
127+
const publishVariantEntryFirst = {
128+
entry: {
129+
environments: ["development"],
130+
locales: ["en-us"],
131+
variants: [
132+
{
133+
uid: "variants_uid",
134+
version: 1,
135+
},
136+
],
137+
variant_rules: {
138+
publish_latest_base: false,
139+
publish_latest_base_conditionally: true,
140+
},
141+
},
142+
locale: "en-us",
143+
version: 1,
144+
};
145+
mock
146+
.onPost("/content_types/content_type_uid/entries/UID/publish")
147+
.reply(200, {
148+
...noticeMock,
149+
job_id: "job_id",
150+
});
151+
152+
makeEntry({ entry: { ...systemUidMock }, options: { api_version: "3.2" } })
153+
.publish({
154+
publishDetails: publishVariantEntryFirst.entry,
155+
locale: publishVariantEntryFirst.locale,
156+
})
157+
.then((entry) => {
158+
expect(entry.notice).to.be.equal(noticeMock.notice);
159+
expect(entry.job_id).to.be.not.equal(undefined);
160+
done();
161+
})
162+
.catch(done);
163+
});
164+
165+
it("Entry unpublish test", (done) => {
166+
var unpublishVariantEntryFirst = {
167+
entry: {
168+
environments: ["development"],
169+
locales: ["en-at"],
170+
variants: [
171+
{
172+
uid: "",
173+
version: 1,
174+
},
175+
],
176+
variant_rules: {
177+
publish_latest_base: false,
178+
publish_latest_base_conditionally: true,
179+
},
180+
},
181+
locale: "en-us",
182+
version: 1,
183+
};
184+
var mock = new MockAdapter(Axios);
185+
mock
186+
.onPost("/content_types/content_type_uid/entries/UID/unpublish")
187+
.reply(200, {
188+
...noticeMock,
189+
job_id: "job_id",
190+
});
191+
makeEntry({ entry: { ...systemUidMock }, options: { api_version: "3.2" } })
192+
.unpublish({
193+
publishDetails: unpublishVariantEntryFirst.entry,
194+
locale: unpublishVariantEntryFirst.locale,
195+
})
196+
.then((entry) => {
197+
expect(entry.notice).to.be.equal(noticeMock.notice);
198+
done();
199+
})
200+
.catch(done);
201+
});
115202
});
116203

117-
function makeEntry(data) {
204+
function makeEntryVariants(data) {
118205
return new Variants(Axios, { ...data });
119206
}
120207

208+
function makeEntry(data) {
209+
return new Entry(Axios, { content_type_uid: "content_type_uid", ...data });
210+
}
211+
121212
function checkEntry(entry) {
122213
checkSystemFields(entry);
123214
}

0 commit comments

Comments
 (0)