@saasquatch/program-test-suite 2.1.2-0 → 2.1.2-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/faker.js +2 -1
- package/dist/faker.js.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/steps/assertions.js +5 -5
- package/dist/steps/assertions.js.map +1 -1
- package/dist/steps/rules.js +1 -1
- package/dist/steps/rules.js.map +1 -1
- package/dist/steps/trigger.js +15 -3
- package/dist/steps/trigger.js.map +1 -1
- package/dist/steps/user.js +9 -4
- package/dist/steps/user.js.map +1 -1
- package/dist/world.d.ts +8 -7
- package/dist/world.js +14 -9
- package/dist/world.js.map +1 -1
- package/package.json +7 -3
package/dist/faker.js
CHANGED
|
@@ -51,11 +51,12 @@ function getIntrospectionJson(template, rules, rewards) {
|
|
|
51
51
|
}
|
|
52
52
|
exports.getIntrospectionJson = getIntrospectionJson;
|
|
53
53
|
function getProgramTriggerJson(info) {
|
|
54
|
+
var _a;
|
|
54
55
|
return {
|
|
55
56
|
messageType: "PROGRAM_TRIGGER",
|
|
56
57
|
activeTrigger: {
|
|
57
58
|
type: info.type,
|
|
58
|
-
time: info.time
|
|
59
|
+
time: (_a = info.time) !== null && _a !== void 0 ? _a : Date.now(),
|
|
59
60
|
user: info.user,
|
|
60
61
|
},
|
|
61
62
|
program: {
|
package/dist/faker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"faker.js","sourceRoot":"","sources":["../src/faker.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,6CAA+B;AAO/B,SAAgB,iBAAiB,CAC/B,IAAyB,EACzB,EAAU,EACV,KAAU;IAEV,OAAO;QACL,WAAW,EAAE,oBAAoB;QACjC,kBAAkB,EAAE,IAAI;QACxB,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE;YACP,EAAE;YACF,KAAK;SACN;KACF,CAAC;AACJ,CAAC;AAdD,8CAcC;AAED,SAAgB,oBAAoB,CAClC,QAAc,EACd,KAAW,EACX,OAAe;IAEf,OAAO;QACL,WAAW,EAAE,uBAAuB;QACpC,QAAQ;QACR,KAAK;QACL,OAAO,EAAE;YACP,EAAE,EAAE,IAAI;YACR,KAAK;YACL,OAAO;SACR;QACD,MAAM,EAAE;YACN,WAAW,EAAE,qBAAqB;YAClC,UAAU,EAAE,KAAK;SAClB;KACF,CAAC;AACJ,CAAC;AAnBD,oDAmBC;AASD,SAAgB,qBAAqB,CACnC,IAAwB
|
|
1
|
+
{"version":3,"file":"faker.js","sourceRoot":"","sources":["../src/faker.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -13,8 +13,8 @@ Object.defineProperty(exports, "jestConfig", { enumerable: true, get: function (
|
|
|
13
13
|
var world_2 = require("./world");
|
|
14
14
|
Object.defineProperty(exports, "getWorld", { enumerable: true, get: function () { return world_2.getWorld; } });
|
|
15
15
|
function runProgramTests(program, featurePath, steps, schemaFile, templateFile, rulesFile, featureFilterTags) {
|
|
16
|
-
world_1.
|
|
17
|
-
world_1.
|
|
16
|
+
world_1.getWorld().setProgram(program);
|
|
17
|
+
world_1.getWorld().loadDefaults(templateFile, schemaFile, rulesFile);
|
|
18
18
|
const features = [];
|
|
19
19
|
const featureFiles = glob_1.sync(`${featurePath}/**/*.feature`);
|
|
20
20
|
if (!featureFiles.length) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,+BAAwC;AACxC,iDAA4E;AAG5E,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,+BAAwC;AACxC,iDAA4E;AAG5E,mCAAmC;AACnC,oDAAmC;AAEnC,6CAAsD;AAA7C,0HAAA,OAAO,OAAc;AAC9B,iCAAmC;AAA1B,iGAAA,QAAQ,OAAA;AAEjB,SAAgB,eAAe,CAC7B,OAA0B,EAC1B,WAAmB,EACnB,KAAwB,EACxB,UAAkB,EAClB,YAAoB,EACpB,SAAiB,EACjB,iBAA4B;IAE5B,gBAAQ,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC/B,gBAAQ,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IAE7D,MAAM,QAAQ,GAAqC,EAAE,CAAC;IACtD,MAAM,YAAY,GAAG,WAAQ,CAAC,GAAG,WAAW,eAAe,CAAC,CAAC;IAE7D,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;QACxB,MAAM,IAAI,KAAK,CAAC,mCAAmC,WAAW,GAAG,CAAC,CAAC;KACpE;IAED,KAAK,IAAI,WAAW,IAAI,YAAY,EAAE;QACpC,IAAI;YACF,MAAM,OAAO,GAAG,2BAAW,CAAC,WAAW,CAAC,CAAC;YACzC,MAAM,IAAI,GAAG,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,MAAM,EACpC,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC9D,CAAC,CAAC,IAAI,CAAC;YACT,IAAI,IAAI;gBAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAClC;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,KAAK,CAAC,gCAAgC,WAAW,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YAC1E,MAAM,CAAC,CAAC;SACT;KACF;IAED,KAAK,IAAI,OAAO,IAAI,QAAQ,EAAE;QAC5B,6EAA6E;QAC7E,KAAK,IAAI,QAAQ,IAAI,OAAO,CAAC,SAAS,EAAE;YACtC,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM;gBACtB,QAAQ,CAAC,KAAK,GAAG,GAAG,QAAQ,CAAC,KAAK,QAAQ,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;SACxE;QACD,KAAK,IAAI,eAAe,IAAI,OAAO,CAAC,gBAAgB,EAAE;YACpD,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE;gBAC/B,eAAe,CAAC,KAAK,GAAG,GACtB,eAAe,CAAC,KAClB,QAAQ,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;aAC3C;YACD,KAAK,IAAI,QAAQ,IAAI,eAAe,CAAC,SAAS,EAAE;gBAC9C,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE;oBAC/B,QAAQ,CAAC,KAAK,GAAG,GAAG,QAAQ,CAAC,KAAK,QAAQ,eAAe,CAAC,IAAI,CAAC,IAAI,CACjE,GAAG,CACJ,GAAG,CAAC;iBACN;aACF;SACF;KACF;IAED,6BAAa,CAAC,QAAQ,EAAE,CAAC,GAAG,KAAK,EAAE,GAAG,eAAY,CAAC,CAAC,CAAC;AACvD,CAAC;AAvDD,0CAuDC"}
|
package/dist/steps/assertions.js
CHANGED
|
@@ -55,7 +55,7 @@ const assertionSteps = ({ then }) => {
|
|
|
55
55
|
`${row.user.toUpperCase()}ACCOUNTID` &&
|
|
56
56
|
m.data.key === row.key);
|
|
57
57
|
});
|
|
58
|
-
assert_1.default.strictEqual(relevantRewards.length, Number(row.count));
|
|
58
|
+
assert_1.default.strictEqual(relevantRewards.length, Number(row.count), `Expected to find ${row.count} rewards but only found ${relevantRewards.length}`);
|
|
59
59
|
break;
|
|
60
60
|
case "email":
|
|
61
61
|
const relevantEmails = world_1.getWorld().state.programTriggerResult.mutations.filter((m) => {
|
|
@@ -89,14 +89,14 @@ const assertionSteps = ({ then }) => {
|
|
|
89
89
|
(!row.isConversion ||
|
|
90
90
|
a.data.isConversion === program_boilerplate_1.inferType(row.isConversion)));
|
|
91
91
|
});
|
|
92
|
-
assert_1.default.strictEqual(relevantAnalytics.length, Number(row.count));
|
|
92
|
+
assert_1.default.strictEqual(relevantAnalytics.length, Number(row.count), `Expected to find ${row.count} analytics but only found ${relevantAnalytics.length}`);
|
|
93
93
|
});
|
|
94
94
|
});
|
|
95
95
|
then("there will be no mutations", () => {
|
|
96
|
-
assert_1.default.strictEqual(world_1.getWorld().state.programTriggerResult.mutations.length, 0);
|
|
96
|
+
assert_1.default.strictEqual(world_1.getWorld().state.programTriggerResult.mutations.length, 0, "Expected zero mutations");
|
|
97
97
|
});
|
|
98
98
|
then("there will be no analytics", () => {
|
|
99
|
-
assert_1.default.strictEqual(world_1.getWorld().state.programTriggerResult.analytics.length, 0);
|
|
99
|
+
assert_1.default.strictEqual(world_1.getWorld().state.programTriggerResult.analytics.length, 0, "Expected zero analytics");
|
|
100
100
|
});
|
|
101
101
|
then(/^there will be (\d+) "?([^"]+)"? reward(s) for the "?([^"]+)"? user$/, (count, key, user) => {
|
|
102
102
|
const relevantRewards = world_1.getWorld().state.programTriggerResult.mutations.filter((m) => {
|
|
@@ -177,7 +177,7 @@ const assertionSteps = ({ then }) => {
|
|
|
177
177
|
assert_1.default.strictEqual(matchingMutations.length, 1);
|
|
178
178
|
});
|
|
179
179
|
then("the output template will be unchanged", () => {
|
|
180
|
-
assert_1.default.deepStrictEqual(world_1.getWorld().state.programTriggerResult, world_1.
|
|
180
|
+
assert_1.default.deepStrictEqual(world_1.getWorld().state.programTriggerResult, world_1.getWorld().getDefaultTemplate());
|
|
181
181
|
});
|
|
182
182
|
then(/^there will be no "?([^"]+)"? analytic for "?([^"]+)"?$/, (type, key) => {
|
|
183
183
|
const matching = world_1.getWorld().state.programTriggerResult.analytics.filter((a) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertions.js","sourceRoot":"","sources":["../../src/steps/assertions.ts"],"names":[],"mappings":";;;;;AACA,oDAA4B;AAC5B,8CAAwB;AACxB,yEAA4D;AAE5D,
|
|
1
|
+
{"version":3,"file":"assertions.js","sourceRoot":"","sources":["../../src/steps/assertions.ts"],"names":[],"mappings":"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"}
|
package/dist/steps/rules.js
CHANGED
package/dist/steps/rules.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../src/steps/rules.ts"],"names":[],"mappings":";;AAEA,oCAAoC;AAEpC,MAAM,UAAU,GAAoB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IAChD,KAAK,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACvC,gBAAQ,EAAE,CAAC,QAAQ,CAAC;YAClB,OAAO,EAAE;gBACP,KAAK,EAAE,SAAS;aACjB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACtC,gBAAQ,EAAE,CAAC,QAAQ,CAAC;YAClB,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,WAAW,EAAE,SAAS;iBACvB;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,6BAA6B,EAAE,CAAC,IAAY,EAAE,EAAE;QACpD,gBAAQ,EAAE,CAAC,QAAQ,CAAC;YAClB,OAAO,EAAE;gBACP,IAAI;
|
|
1
|
+
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../src/steps/rules.ts"],"names":[],"mappings":";;AAEA,oCAAoC;AAEpC,MAAM,UAAU,GAAoB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IAChD,KAAK,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACvC,gBAAQ,EAAE,CAAC,QAAQ,CAAC;YAClB,OAAO,EAAE;gBACP,KAAK,EAAE,SAAS;aACjB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACtC,gBAAQ,EAAE,CAAC,QAAQ,CAAC;YAClB,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,WAAW,EAAE,SAAS;iBACvB;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,6BAA6B,EAAE,CAAC,IAAY,EAAE,EAAE;QACpD,gBAAQ,EAAE,CAAC,QAAQ,CAAC;YAClB,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;aACnB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,kBAAe,UAAU,CAAC"}
|
package/dist/steps/trigger.js
CHANGED
|
@@ -8,8 +8,20 @@ const deepmerge_1 = __importDefault(require("deepmerge"));
|
|
|
8
8
|
const world_1 = require("../world");
|
|
9
9
|
const faker_1 = require("../faker");
|
|
10
10
|
const triggerSteps = ({ when }) => {
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
const triggerTypes = [
|
|
12
|
+
"PROGRAM_INTROSPECTION",
|
|
13
|
+
"PROGRAM_VALIDATION",
|
|
14
|
+
"AFTER_USER_CREATED_OR_UPDATED",
|
|
15
|
+
"AFTER_USER_EVENT_PROCESSED",
|
|
16
|
+
"REFERRAL",
|
|
17
|
+
"SCHEDULED",
|
|
18
|
+
"REWARD_SCHEDULED",
|
|
19
|
+
];
|
|
20
|
+
// prettier-ignore
|
|
21
|
+
const regexString = `^(?:the )?"?(${triggerTypes.join("|")})"?(?: trigger)? runs$`;
|
|
22
|
+
when(new RegExp(regexString), (type) => {
|
|
23
|
+
var _a;
|
|
24
|
+
const currentState = (_a = world_1.getWorld().state.current) !== null && _a !== void 0 ? _a : {};
|
|
13
25
|
const { template, rules, programRewards } = currentState;
|
|
14
26
|
let body;
|
|
15
27
|
switch (type) {
|
|
@@ -41,7 +53,7 @@ const triggerSteps = ({ when }) => {
|
|
|
41
53
|
break;
|
|
42
54
|
}
|
|
43
55
|
world_1.getWorld().setState({
|
|
44
|
-
programTriggerResult: program_boilerplate_1.triggerProgram(body, world_1.
|
|
56
|
+
programTriggerResult: program_boilerplate_1.triggerProgram(body, world_1.getWorld().getProgram()).json,
|
|
45
57
|
});
|
|
46
58
|
});
|
|
47
59
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trigger.js","sourceRoot":"","sources":["../../src/steps/trigger.ts"],"names":[],"mappings":";;;;;AACA,yEAAwE;AACxE,0DAAkC;AAElC,
|
|
1
|
+
{"version":3,"file":"trigger.js","sourceRoot":"","sources":["../../src/steps/trigger.ts"],"names":[],"mappings":";;;;;AACA,yEAAwE;AACxE,0DAAkC;AAElC,oCAAoC;AACpC,oCAOkB;AAElB,MAAM,YAAY,GAAoB,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;IACjD,MAAM,YAAY,GAAG;QACnB,uBAAuB;QACvB,oBAAoB;QACpB,+BAA+B;QAC/B,4BAA4B;QAC5B,UAAU;QACV,WAAW;QACX,kBAAkB;KACnB,CAAC;IAEF,kBAAkB;IAClB,MAAM,WAAW,GAAG,gBAAgB,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC;IAEnF,IAAI,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,IAA2B,EAAE,EAAE;;QAC5D,MAAM,YAAY,SAAG,gBAAQ,EAAE,CAAC,KAAK,CAAC,OAAO,mCAAI,EAAE,CAAC;QACpD,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,YAAY,CAAC;QAEzD,IAAI,IAAS,CAAC;QAEd,QAAQ,IAAI,EAAE;YACZ,KAAK,uBAAuB;gBAC1B,IAAI,GAAG,4BAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;gBAC7D,MAAM;YAER,KAAK,oBAAoB;gBACvB,IAAI,GAAG,yBAAiB,CACtB,gBAAQ,EAAE,CAAC,KAAK,CAAC,cAAc,EAC/B,QAAQ,CAAC,EAAE,EACX,KAAK,CACN,CAAC;gBACF,MAAM;YAER;gBACE,IAAI,GAAG,6BAAqB,CAAC;oBAC3B,IAAI;oBACJ,IAAI,EAAE,gBAAQ,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI;oBACnC,KAAK,EAAE,gBAAQ,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK;oBACrC,IAAI,EAAE,gBAAQ,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI;iBACpC,CAAC,CAAC;SACN;QAED,QAAQ,IAAI,EAAE;YACZ,KAAK,+BAA+B;gBAClC,IAAI,GAAG,mBAAS,CACd,IAAI,EACJ,qBAAa,CAAC,SAAS,EAAE,gBAAQ,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAC1D,CAAC;gBACF,MAAM;YAER,KAAK,4BAA4B;gBAC/B,IAAI,GAAG,mBAAS,CAAC,IAAI,EAAE,oBAAY,CAAC,gBAAQ,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;gBACtE,MAAM;YAER,KAAK,UAAU;gBACb,IAAI,GAAG,mBAAS,CACd,IAAI,EACJ,uBAAe,CAAC,SAAS,EAAE,gBAAQ,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAC9D,CAAC;gBACF,MAAM;YAER;gBACE,MAAM;SACT;QAED,gBAAQ,EAAE,CAAC,QAAQ,CAAC;YAClB,oBAAoB,EAAE,oCAAc,CAAC,IAAI,EAAE,gBAAQ,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI;SACzE,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,kBAAe,YAAY,CAAC"}
|
package/dist/steps/user.js
CHANGED
|
@@ -23,9 +23,12 @@ const userSteps = ({ given }) => {
|
|
|
23
23
|
},
|
|
24
24
|
});
|
|
25
25
|
});
|
|
26
|
-
given(/^the segment rules include segment (
|
|
27
|
-
|
|
28
|
-
segments.
|
|
26
|
+
given(/^the segment rules include segment "?([^"]+)"?$/, (seg) => {
|
|
27
|
+
var _a;
|
|
28
|
+
const segments = (_a = world_1.getWorld().state.current.rules.userSegmentation) !== null && _a !== void 0 ? _a : [];
|
|
29
|
+
if (!segments.includes(seg)) {
|
|
30
|
+
segments.push(seg);
|
|
31
|
+
}
|
|
29
32
|
world_1.getWorld().setState({
|
|
30
33
|
current: {
|
|
31
34
|
rules: {
|
|
@@ -36,7 +39,9 @@ const userSteps = ({ given }) => {
|
|
|
36
39
|
});
|
|
37
40
|
given(/^the (?:referred )?user belongs to segment "?([^"]+)"?$/, (segment) => {
|
|
38
41
|
const segments = world_1.getWorld().state.current.user.segments || [];
|
|
39
|
-
segments.
|
|
42
|
+
if (!segments.includes(segment)) {
|
|
43
|
+
segments.push(segment);
|
|
44
|
+
}
|
|
40
45
|
world_1.getWorld().setState({
|
|
41
46
|
current: {
|
|
42
47
|
user: {
|
package/dist/steps/user.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/steps/user.ts"],"names":[],"mappings":";;AACA,yEAA4D;AAE5D,oCAAoC;AAEpC,MAAM,SAAS,GAAoB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IAC/C,KAAK,CACH,4EAA4E,EAC5E,CAAC,KAAa,EAAE,GAAW,EAAE,EAAE;QAC7B,gBAAQ,EAAE,CAAC,QAAQ,CAAC;YAClB,OAAO,EAAE;gBACP,IAAI,EAAE;oBACJ,YAAY,EAAE;wBACZ,CAAC,KAAK,CAAC,EAAE,+BAAS,CAAC,GAAG,CAAC;qBACxB;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CACF,CAAC;IAEF,KAAK,CACH,oDAAoD,EACpD,CAAC,OAAe,EAAE,EAAE;QAClB,gBAAQ,EAAE,CAAC,QAAQ,CAAC;YAClB,OAAO,EAAE;gBACP,IAAI,EAAE;oBACJ,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;iBAChD;aACF;SACF,CAAC,CAAC;IACL,CAAC,CACF,CAAC;IAEF,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/steps/user.ts"],"names":[],"mappings":"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"}
|
package/dist/world.d.ts
CHANGED
|
@@ -16,15 +16,16 @@ interface State {
|
|
|
16
16
|
}>;
|
|
17
17
|
}
|
|
18
18
|
export declare class World {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
private program;
|
|
20
|
+
private defaultIntrospection;
|
|
21
|
+
private defaultRules;
|
|
22
|
+
private defaultTemplate;
|
|
23
23
|
state: Readonly<State>;
|
|
24
24
|
constructor();
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
loadDefaults(schemaFile: string, templateFile: string, rulesFile: string): void;
|
|
26
|
+
setProgram(program: types.rpc.Program): void;
|
|
27
|
+
getProgram(): types.rpc.Program;
|
|
28
|
+
getDefaultTemplate(): any;
|
|
28
29
|
setState(newState: Partial<State>): this;
|
|
29
30
|
reset(): Readonly<State>;
|
|
30
31
|
}
|
package/dist/world.js
CHANGED
|
@@ -7,24 +7,31 @@ exports.getWorld = exports.World = void 0;
|
|
|
7
7
|
const fs_1 = require("fs");
|
|
8
8
|
const deepmerge_1 = __importDefault(require("deepmerge"));
|
|
9
9
|
const faker_1 = require("./faker");
|
|
10
|
+
const deepCopy = (input) => JSON.parse(JSON.stringify(input));
|
|
10
11
|
class World {
|
|
11
12
|
constructor() {
|
|
13
|
+
this.defaultIntrospection = {};
|
|
14
|
+
this.defaultRules = {};
|
|
15
|
+
this.defaultTemplate = {};
|
|
12
16
|
this.state = this.reset();
|
|
13
17
|
}
|
|
14
|
-
|
|
18
|
+
loadDefaults(schemaFile, templateFile, rulesFile) {
|
|
15
19
|
this.defaultIntrospection = JSON.parse(fs_1.readFileSync(templateFile).toString());
|
|
16
20
|
const schema = JSON.parse(fs_1.readFileSync(schemaFile).toString());
|
|
17
21
|
this.defaultRules = JSON.parse(fs_1.readFileSync(rulesFile).toString());
|
|
18
22
|
this.defaultTemplate = deepmerge_1.default(this.defaultIntrospection, schema);
|
|
19
23
|
}
|
|
20
|
-
|
|
24
|
+
setProgram(program) {
|
|
21
25
|
this.program = program;
|
|
22
26
|
}
|
|
23
|
-
|
|
27
|
+
getProgram() {
|
|
24
28
|
if (!this.program)
|
|
25
29
|
throw new Error("The program has to be set");
|
|
26
30
|
return this.program;
|
|
27
31
|
}
|
|
32
|
+
getDefaultTemplate() {
|
|
33
|
+
return this.defaultTemplate;
|
|
34
|
+
}
|
|
28
35
|
setState(newState) {
|
|
29
36
|
this.state = deepmerge_1.default(this.state, newState, { arrayMerge: (_, a) => a });
|
|
30
37
|
return this;
|
|
@@ -39,21 +46,19 @@ class World {
|
|
|
39
46
|
referral: {},
|
|
40
47
|
programRewards: [],
|
|
41
48
|
user: faker_1.getRandomUser("REFERRED"),
|
|
42
|
-
rules:
|
|
43
|
-
template:
|
|
49
|
+
rules: deepCopy(this.defaultRules),
|
|
50
|
+
template: deepCopy(this.defaultTemplate),
|
|
44
51
|
},
|
|
45
52
|
};
|
|
46
53
|
return this.state;
|
|
47
54
|
}
|
|
48
55
|
}
|
|
49
56
|
exports.World = World;
|
|
50
|
-
World.defaultIntrospection = "{}";
|
|
51
|
-
World.defaultRules = "{}";
|
|
52
|
-
World.defaultTemplate = {};
|
|
53
57
|
let world;
|
|
54
58
|
function getWorld() {
|
|
55
|
-
if (
|
|
59
|
+
if (world === undefined) {
|
|
56
60
|
world = new World();
|
|
61
|
+
}
|
|
57
62
|
return world;
|
|
58
63
|
}
|
|
59
64
|
exports.getWorld = getWorld;
|
package/dist/world.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"world.js","sourceRoot":"","sources":["../src/world.ts"],"names":[],"mappings":";;;;;;AAAA,2BAAkC;AAClC,0DAAkC;AAGlC,mCAAwC;AAmBxC,MAAa,KAAK;IAQhB;
|
|
1
|
+
{"version":3,"file":"world.js","sourceRoot":"","sources":["../src/world.ts"],"names":[],"mappings":";;;;;;AAAA,2BAAkC;AAClC,0DAAkC;AAGlC,mCAAwC;AAmBxC,MAAM,QAAQ,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AAEnE,MAAa,KAAK;IAQhB;QANQ,yBAAoB,GAAG,EAAE,CAAC;QAC1B,iBAAY,GAAG,EAAE,CAAC;QAClB,oBAAe,GAAQ,EAAE,CAAC;QAKhC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,YAAY,CAAC,UAAkB,EAAE,YAAoB,EAAE,SAAiB;QACtE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,KAAK,CACpC,iBAAY,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CACtC,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAY,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAY,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,eAAe,GAAG,mBAAS,CAAC,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;IACtE,CAAC;IAED,UAAU,CAAC,OAA0B;QACnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,UAAU;QACR,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,QAAQ,CAAC,QAAwB;QAC/B,IAAI,CAAC,KAAK,GAAG,mBAAS,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,GAAG;YACX,oBAAoB,EAAE,EAAE;YACxB,cAAc,EAAE,EAAE;YAClB,gBAAgB,EAAE,EAAE;YACpB,OAAO,EAAE;gBACP,MAAM,EAAE,EAAE;gBACV,QAAQ,EAAE,EAAE;gBACZ,cAAc,EAAE,EAAE;gBAClB,IAAI,EAAE,qBAAa,CAAC,UAAU,CAAC;gBAC/B,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC;gBAClC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC;aACzC;SACF,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF;AAxDD,sBAwDC;AAED,IAAI,KAAwB,CAAC;AAE7B,SAAgB,QAAQ;IACtB,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC;KACrB;IAED,OAAO,KAAc,CAAC;AACxB,CAAC;AAND,4BAMC"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@saasquatch/program-test-suite",
|
|
3
|
-
"version": "2.1.2-
|
|
3
|
+
"version": "2.1.2-1",
|
|
4
4
|
"description": "A collection of utilities for creating program unit tests",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
7
|
+
"dev": "tsc -w",
|
|
7
8
|
"build": "tsc"
|
|
8
9
|
},
|
|
9
10
|
"files": [
|
|
@@ -18,10 +19,13 @@
|
|
|
18
19
|
"glob": "^7.1.6",
|
|
19
20
|
"jest": "^26.6.3",
|
|
20
21
|
"jest-cucumber": "^3.0.0",
|
|
21
|
-
"ts-jest": "^26.5.0"
|
|
22
|
-
|
|
22
|
+
"ts-jest": "^26.5.0"
|
|
23
|
+
},
|
|
24
|
+
"peerDependencies": {
|
|
25
|
+
"@saasquatch/program-boilerplate": ">=3.5.6"
|
|
23
26
|
},
|
|
24
27
|
"devDependencies": {
|
|
28
|
+
"@saasquatch/program-boilerplate": "^3.5.7-0",
|
|
25
29
|
"@types/dlv": "^1.1.2",
|
|
26
30
|
"@types/express": "^4.17.11",
|
|
27
31
|
"@types/faker": "^5.1.6",
|