@storybook/csf 0.0.2--canary.0899bb7.0 → 0.0.2--canary.50.794a0bf.0
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/index.d.ts +0 -1
- package/dist/index.js +1 -10
- package/dist/story.d.ts +2 -25
- package/dist/story.test.js +2 -31
- package/package.json +9 -5
- package/dist/includeConditionalArg.d.ts +0 -3
- package/dist/includeConditionalArg.js +0 -74
- package/dist/includeConditionalArg.test.js +0 -318
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
@@ -8,22 +8,13 @@ var _exportNames = {
|
|
8
8
|
toId: true,
|
9
9
|
storyNameFromExport: true,
|
10
10
|
isExportStory: true,
|
11
|
-
parseKind: true
|
12
|
-
includeConditionalArg: true
|
11
|
+
parseKind: true
|
13
12
|
};
|
14
13
|
exports.isExportStory = isExportStory;
|
15
|
-
Object.defineProperty(exports, "includeConditionalArg", {
|
16
|
-
enumerable: true,
|
17
|
-
get: function get() {
|
18
|
-
return _includeConditionalArg.includeConditionalArg;
|
19
|
-
}
|
20
|
-
});
|
21
14
|
exports.parseKind = exports.storyNameFromExport = exports.toId = exports.sanitize = void 0;
|
22
15
|
|
23
16
|
var _startCase = _interopRequireDefault(require("lodash/startCase"));
|
24
17
|
|
25
|
-
var _includeConditionalArg = require("./includeConditionalArg");
|
26
|
-
|
27
18
|
var _story = require("./story");
|
28
19
|
|
29
20
|
Object.keys(_story).forEach(function (key) {
|
package/dist/story.d.ts
CHANGED
@@ -16,27 +16,11 @@ export interface StoryIdentifier {
|
|
16
16
|
export declare type Parameters = {
|
17
17
|
[name: string]: any;
|
18
18
|
};
|
19
|
-
declare type ConditionalTest = {
|
20
|
-
truthy?: boolean;
|
21
|
-
} | {
|
22
|
-
exists: boolean;
|
23
|
-
} | {
|
24
|
-
eq: any;
|
25
|
-
} | {
|
26
|
-
neq: any;
|
27
|
-
};
|
28
|
-
declare type ConditionalValue = {
|
29
|
-
arg: string;
|
30
|
-
} | {
|
31
|
-
global: string;
|
32
|
-
};
|
33
|
-
export declare type Conditional = ConditionalValue & ConditionalTest;
|
34
19
|
export interface InputType {
|
35
20
|
name?: string;
|
36
21
|
description?: string;
|
37
22
|
defaultValue?: any;
|
38
23
|
type?: SBType | SBScalarType['name'];
|
39
|
-
if?: Conditional;
|
40
24
|
[key: string]: any;
|
41
25
|
}
|
42
26
|
export interface StrictInputType extends InputType {
|
@@ -93,26 +77,20 @@ export declare type StoryContext<TFramework extends AnyFramework = AnyFramework,
|
|
93
77
|
abortSignal: AbortSignal;
|
94
78
|
canvasElement: HTMLElement;
|
95
79
|
};
|
96
|
-
export declare type
|
97
|
-
export declare type StepFunction<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (label: StepLabel, play: PlayFunction<TFramework, TArgs>) => void;
|
98
|
-
export declare type PlayFunctionContext<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = StoryContext<TFramework, TArgs> & {
|
99
|
-
step: StepFunction<TFramework, TArgs>;
|
100
|
-
};
|
101
|
-
export declare type PlayFunction<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (context: PlayFunctionContext<TFramework, TArgs>) => Promise<void> | void;
|
80
|
+
export declare type PlayFunction<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (context: StoryContext<TFramework, TArgs>) => Promise<void> | void;
|
102
81
|
export declare type PartialStoryFn<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (update?: StoryContextUpdate<TArgs>) => TFramework['storyResult'];
|
103
82
|
export declare type LegacyStoryFn<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (context: StoryContext<TFramework, TArgs>) => TFramework['storyResult'];
|
104
83
|
export declare type ArgsStoryFn<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (args: TArgs, context: StoryContext<TFramework, TArgs>) => TFramework['storyResult'];
|
105
84
|
export declare type StoryFn<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = LegacyStoryFn<TFramework, TArgs> | ArgsStoryFn<TFramework, TArgs>;
|
106
85
|
export declare type DecoratorFunction<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (fn: PartialStoryFn<TFramework, TArgs>, c: StoryContext<TFramework, TArgs>) => TFramework['storyResult'];
|
107
86
|
export declare type DecoratorApplicator<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (storyFn: LegacyStoryFn<TFramework, TArgs>, decorators: DecoratorFunction<TFramework, TArgs>[]) => LegacyStoryFn<TFramework, TArgs>;
|
108
|
-
export declare type StepRunner<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (label: StepLabel, play: PlayFunction<TFramework, TArgs>, context: PlayFunctionContext<TFramework, TArgs>) => Promise<void>;
|
109
87
|
export declare type BaseAnnotations<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = {
|
110
88
|
decorators?: DecoratorFunction<TFramework, Args>[];
|
111
89
|
parameters?: Parameters;
|
112
90
|
args?: Partial<TArgs>;
|
113
91
|
argTypes?: Partial<ArgTypes<TArgs>>;
|
114
92
|
loaders?: LoaderFunction<TFramework, Args>[];
|
115
|
-
render?: ArgsStoryFn<TFramework,
|
93
|
+
render?: ArgsStoryFn<TFramework, Args>;
|
116
94
|
};
|
117
95
|
export declare type ProjectAnnotations<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = BaseAnnotations<TFramework, TArgs> & {
|
118
96
|
argsEnhancers?: ArgsEnhancer<TFramework, Args>[];
|
@@ -120,7 +98,6 @@ export declare type ProjectAnnotations<TFramework extends AnyFramework = AnyFram
|
|
120
98
|
globals?: Globals;
|
121
99
|
globalTypes?: GlobalTypes;
|
122
100
|
applyDecorators?: DecoratorApplicator<TFramework, Args>;
|
123
|
-
runStep?: StepRunner<TFramework, TArgs>;
|
124
101
|
};
|
125
102
|
declare type StoryDescriptor = string[] | RegExp;
|
126
103
|
export declare type ComponentAnnotations<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = BaseAnnotations<TFramework, TArgs> & {
|
package/dist/story.test.js
CHANGED
@@ -1,9 +1,5 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
4
|
-
|
5
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
6
|
-
|
7
3
|
// NOTE Example of internal type definition for @storybook/<X> (where X is a framework)
|
8
4
|
// NOTE Examples of using types from @storybook/<X> in real project
|
9
5
|
var Button = function Button() {
|
@@ -120,7 +116,7 @@ CSF2Story.args = {
|
|
120
116
|
a: 1
|
121
117
|
};
|
122
118
|
var CSF3Story = {
|
123
|
-
render: function render(
|
119
|
+
render: function render() {
|
124
120
|
return 'Named Story';
|
125
121
|
},
|
126
122
|
name: 'Another name for story',
|
@@ -142,7 +138,7 @@ var CSF3Story = {
|
|
142
138
|
}
|
143
139
|
};
|
144
140
|
var CSF3StoryStrict = {
|
145
|
-
render: function render(
|
141
|
+
render: function render() {
|
146
142
|
return 'Named Story';
|
147
143
|
},
|
148
144
|
name: 'Another name for story',
|
@@ -161,31 +157,6 @@ var CSF3StoryStrict = {
|
|
161
157
|
}],
|
162
158
|
args: {
|
163
159
|
x: '1'
|
164
|
-
},
|
165
|
-
play: function play(_ref) {
|
166
|
-
var step = _ref.step;
|
167
|
-
step('a step', function (_ref2) {
|
168
|
-
var substep = _ref2.step;
|
169
|
-
substep('a substep', function () {});
|
170
|
-
});
|
171
|
-
}
|
172
|
-
};
|
173
|
-
var project = {
|
174
|
-
runStep: function runStep(label, play, context) {
|
175
|
-
return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
|
176
|
-
return regeneratorRuntime.wrap(function _callee$(_context) {
|
177
|
-
while (1) {
|
178
|
-
switch (_context.prev = _context.next) {
|
179
|
-
case 0:
|
180
|
-
return _context.abrupt("return", play(context));
|
181
|
-
|
182
|
-
case 1:
|
183
|
-
case "end":
|
184
|
-
return _context.stop();
|
185
|
-
}
|
186
|
-
}
|
187
|
-
}, _callee);
|
188
|
-
}))();
|
189
160
|
}
|
190
161
|
}; // NOTE Jest forced to define at least one test in file
|
191
162
|
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@storybook/csf",
|
3
|
-
"version": "0.0.2--canary.
|
3
|
+
"version": "0.0.2--canary.50.794a0bf.0",
|
4
4
|
"description": "Component Story Format (CSF) utilities",
|
5
5
|
"keywords": [
|
6
6
|
"storybook",
|
@@ -38,15 +38,13 @@
|
|
38
38
|
},
|
39
39
|
"prettier": "@storybook/linter-config/prettier.config",
|
40
40
|
"jest": {
|
41
|
-
"testEnvironment": "node"
|
42
|
-
"roots": [
|
43
|
-
"<rootDir>/src"
|
44
|
-
]
|
41
|
+
"testEnvironment": "node"
|
45
42
|
},
|
46
43
|
"dependencies": {
|
47
44
|
"lodash": "^4.17.15"
|
48
45
|
},
|
49
46
|
"devDependencies": {
|
47
|
+
"@auto-it/released": "^10.37.1",
|
50
48
|
"@babel/cli": "^7.8.4",
|
51
49
|
"@babel/core": "^7.9.0",
|
52
50
|
"@babel/preset-env": "^7.9.5",
|
@@ -63,6 +61,12 @@
|
|
63
61
|
"prettier": "^1.19.1",
|
64
62
|
"typescript": "^3.7.2"
|
65
63
|
},
|
64
|
+
"auto": {
|
65
|
+
"plugins": [
|
66
|
+
"npm",
|
67
|
+
"released"
|
68
|
+
]
|
69
|
+
},
|
66
70
|
"publishConfig": {
|
67
71
|
"access": "public"
|
68
72
|
}
|
@@ -1,74 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.includeConditionalArg = exports.testValue = void 0;
|
7
|
-
|
8
|
-
var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
|
9
|
-
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
11
|
-
|
12
|
-
var count = function count(vals) {
|
13
|
-
return vals.map(function (v) {
|
14
|
-
return typeof v !== 'undefined';
|
15
|
-
}).filter(Boolean).length;
|
16
|
-
};
|
17
|
-
|
18
|
-
var testValue = function testValue(cond, value) {
|
19
|
-
var _ref = cond,
|
20
|
-
exists = _ref.exists,
|
21
|
-
eq = _ref.eq,
|
22
|
-
neq = _ref.neq,
|
23
|
-
truthy = _ref.truthy;
|
24
|
-
|
25
|
-
if (count([exists, eq, neq, truthy]) > 1) {
|
26
|
-
throw new Error("Invalid conditional test ".concat(JSON.stringify({
|
27
|
-
exists: exists,
|
28
|
-
eq: eq,
|
29
|
-
neq: neq
|
30
|
-
})));
|
31
|
-
}
|
32
|
-
|
33
|
-
if (typeof eq !== 'undefined') {
|
34
|
-
return (0, _isEqual["default"])(value, eq);
|
35
|
-
}
|
36
|
-
|
37
|
-
if (typeof neq !== 'undefined') {
|
38
|
-
return !(0, _isEqual["default"])(value, neq);
|
39
|
-
}
|
40
|
-
|
41
|
-
if (typeof exists !== 'undefined') {
|
42
|
-
var valueExists = typeof value !== 'undefined';
|
43
|
-
return exists ? valueExists : !valueExists;
|
44
|
-
}
|
45
|
-
|
46
|
-
var shouldBeTruthy = typeof truthy === 'undefined' ? true : truthy;
|
47
|
-
return shouldBeTruthy ? !!value : !value;
|
48
|
-
};
|
49
|
-
/**
|
50
|
-
* Helper function to include/exclude an arg based on the value of other other args
|
51
|
-
* aka "conditional args"
|
52
|
-
*/
|
53
|
-
|
54
|
-
|
55
|
-
exports.testValue = testValue;
|
56
|
-
|
57
|
-
var includeConditionalArg = function includeConditionalArg(argType, args, globals) {
|
58
|
-
if (!argType["if"]) return true;
|
59
|
-
var _ref2 = argType["if"],
|
60
|
-
arg = _ref2.arg,
|
61
|
-
global = _ref2.global;
|
62
|
-
|
63
|
-
if (count([arg, global]) !== 1) {
|
64
|
-
throw new Error("Invalid conditional value ".concat(JSON.stringify({
|
65
|
-
arg: arg,
|
66
|
-
global: global
|
67
|
-
})));
|
68
|
-
}
|
69
|
-
|
70
|
-
var value = arg ? args[arg] : globals[global];
|
71
|
-
return testValue(argType["if"], value);
|
72
|
-
};
|
73
|
-
|
74
|
-
exports.includeConditionalArg = includeConditionalArg;
|
@@ -1,318 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
var _includeConditionalArg = require("./includeConditionalArg");
|
4
|
-
|
5
|
-
/* eslint-disable @typescript-eslint/ban-ts-ignore */
|
6
|
-
describe('testValue', function () {
|
7
|
-
describe('truthy', function () {
|
8
|
-
it.each([['implicit true', {}, true, true], ['implicit truthy', {}, 1, true], ['implicit falsey', {}, 0, false], ['truthy true', {
|
9
|
-
truthy: true
|
10
|
-
}, true, true], ['truthy truthy', {
|
11
|
-
truthy: true
|
12
|
-
}, 1, true], ['truthy falsey', {
|
13
|
-
truthy: true
|
14
|
-
}, 0, false], ['falsey true', {
|
15
|
-
truthy: false
|
16
|
-
}, true, false], ['falsey truthy', {
|
17
|
-
truthy: false
|
18
|
-
}, 1, false], ['falsey falsey', {
|
19
|
-
truthy: false
|
20
|
-
}, 0, true]])('%s', function (_name, cond, value, expected) {
|
21
|
-
// @ts-ignore
|
22
|
-
expect((0, _includeConditionalArg.testValue)(cond, value)).toBe(expected);
|
23
|
-
});
|
24
|
-
});
|
25
|
-
describe('exists', function () {
|
26
|
-
it.each([['exist', {
|
27
|
-
exists: true
|
28
|
-
}, 1, true], ['exist false', {
|
29
|
-
exists: true
|
30
|
-
}, undefined, false], ['nexist', {
|
31
|
-
exists: false
|
32
|
-
}, undefined, true], ['nexist false', {
|
33
|
-
exists: false
|
34
|
-
}, 1, false]])('%s', function (_name, cond, value, expected) {
|
35
|
-
// @ts-ignore
|
36
|
-
expect((0, _includeConditionalArg.testValue)(cond, value)).toBe(expected);
|
37
|
-
});
|
38
|
-
});
|
39
|
-
describe('eq', function () {
|
40
|
-
it.each([['true', {
|
41
|
-
eq: 1
|
42
|
-
}, 1, true], ['false', {
|
43
|
-
eq: 1
|
44
|
-
}, 2, false], ['undefined', {
|
45
|
-
eq: undefined
|
46
|
-
}, undefined, false], ['undefined false', {
|
47
|
-
eq: 1
|
48
|
-
}, undefined, false], ['object true', {
|
49
|
-
eq: {
|
50
|
-
x: 1
|
51
|
-
}
|
52
|
-
}, {
|
53
|
-
x: 1
|
54
|
-
}, true], ['object true', {
|
55
|
-
eq: {
|
56
|
-
x: 1
|
57
|
-
}
|
58
|
-
}, {
|
59
|
-
x: 2
|
60
|
-
}, false]])('%s', function (_name, cond, value, expected) {
|
61
|
-
// @ts-ignore
|
62
|
-
expect((0, _includeConditionalArg.testValue)(cond, value)).toBe(expected);
|
63
|
-
});
|
64
|
-
});
|
65
|
-
describe('neq', function () {
|
66
|
-
it.each([['true', {
|
67
|
-
neq: 1
|
68
|
-
}, 2, true], ['false', {
|
69
|
-
neq: 1
|
70
|
-
}, 1, false], ['undefined true', {
|
71
|
-
neq: 1
|
72
|
-
}, undefined, true], ['undefined false', {
|
73
|
-
neq: undefined
|
74
|
-
}, undefined, false], ['object true', {
|
75
|
-
neq: {
|
76
|
-
x: 1
|
77
|
-
}
|
78
|
-
}, {
|
79
|
-
x: 2
|
80
|
-
}, true], ['object false', {
|
81
|
-
neq: {
|
82
|
-
x: 1
|
83
|
-
}
|
84
|
-
}, {
|
85
|
-
x: 1
|
86
|
-
}, false]])('%s', function (_name, cond, value, expected) {
|
87
|
-
// @ts-ignore
|
88
|
-
expect((0, _includeConditionalArg.testValue)(cond, value)).toBe(expected);
|
89
|
-
});
|
90
|
-
});
|
91
|
-
});
|
92
|
-
describe('includeConditionalArg', function () {
|
93
|
-
describe('errors', function () {
|
94
|
-
it('should throw if arg and global are both specified', function () {
|
95
|
-
expect(function () {
|
96
|
-
return (0, _includeConditionalArg.includeConditionalArg)({
|
97
|
-
"if": {
|
98
|
-
arg: 'a',
|
99
|
-
global: 'b'
|
100
|
-
}
|
101
|
-
}, {}, {});
|
102
|
-
}).toThrowErrorMatchingInlineSnapshot("\"Invalid conditional value {\\\"arg\\\":\\\"a\\\",\\\"global\\\":\\\"b\\\"}\"");
|
103
|
-
});
|
104
|
-
it('should throw if mulitiple exists / eq / neq are specified', function () {
|
105
|
-
expect(function () {
|
106
|
-
return (0, _includeConditionalArg.includeConditionalArg)({
|
107
|
-
"if": {
|
108
|
-
arg: 'a',
|
109
|
-
exists: true,
|
110
|
-
eq: 1
|
111
|
-
}
|
112
|
-
}, {}, {});
|
113
|
-
}).toThrowErrorMatchingInlineSnapshot("\"Invalid conditional test {\\\"exists\\\":true,\\\"eq\\\":1}\"");
|
114
|
-
expect(function () {
|
115
|
-
return (0, _includeConditionalArg.includeConditionalArg)({
|
116
|
-
"if": {
|
117
|
-
arg: 'a',
|
118
|
-
exists: false,
|
119
|
-
neq: 0
|
120
|
-
}
|
121
|
-
}, {}, {});
|
122
|
-
}).toThrowErrorMatchingInlineSnapshot("\"Invalid conditional test {\\\"exists\\\":false,\\\"neq\\\":0}\"");
|
123
|
-
expect(function () {
|
124
|
-
return (0, _includeConditionalArg.includeConditionalArg)({
|
125
|
-
"if": {
|
126
|
-
arg: 'a',
|
127
|
-
eq: 1,
|
128
|
-
neq: 0
|
129
|
-
}
|
130
|
-
}, {}, {});
|
131
|
-
}).toThrowErrorMatchingInlineSnapshot("\"Invalid conditional test {\\\"eq\\\":1,\\\"neq\\\":0}\"");
|
132
|
-
});
|
133
|
-
});
|
134
|
-
describe('args', function () {
|
135
|
-
describe('implicit', function () {
|
136
|
-
it.each([['implicit true', {
|
137
|
-
"if": {
|
138
|
-
arg: 'a'
|
139
|
-
}
|
140
|
-
}, {
|
141
|
-
a: 1
|
142
|
-
}, {}, true], ['truthy true', {
|
143
|
-
"if": {
|
144
|
-
arg: 'a',
|
145
|
-
truthy: true
|
146
|
-
}
|
147
|
-
}, {
|
148
|
-
a: 0
|
149
|
-
}, {}, false], ['truthy false', {
|
150
|
-
"if": {
|
151
|
-
arg: 'a',
|
152
|
-
truthy: false
|
153
|
-
}
|
154
|
-
}, {}, {}, true]])('%s', function (_name, argType, args, globals, expected) {
|
155
|
-
// @ts-ignore
|
156
|
-
expect((0, _includeConditionalArg.includeConditionalArg)(argType, args, globals)).toBe(expected);
|
157
|
-
});
|
158
|
-
});
|
159
|
-
describe('exists', function () {
|
160
|
-
it.each([['exist', {
|
161
|
-
"if": {
|
162
|
-
arg: 'a',
|
163
|
-
exists: true
|
164
|
-
}
|
165
|
-
}, {
|
166
|
-
a: 1
|
167
|
-
}, {}, true], ['exist false', {
|
168
|
-
"if": {
|
169
|
-
arg: 'a',
|
170
|
-
exists: true
|
171
|
-
}
|
172
|
-
}, {}, {}, false]])('%s', function (_name, argType, args, globals, expected) {
|
173
|
-
// @ts-ignore
|
174
|
-
expect((0, _includeConditionalArg.includeConditionalArg)(argType, args, globals)).toBe(expected);
|
175
|
-
});
|
176
|
-
});
|
177
|
-
describe('eq', function () {
|
178
|
-
it.each([['scalar true', {
|
179
|
-
"if": {
|
180
|
-
arg: 'a',
|
181
|
-
eq: 1
|
182
|
-
}
|
183
|
-
}, {
|
184
|
-
a: 1
|
185
|
-
}, {}, true], ['scalar false', {
|
186
|
-
"if": {
|
187
|
-
arg: 'a',
|
188
|
-
eq: 1
|
189
|
-
}
|
190
|
-
}, {
|
191
|
-
a: 2
|
192
|
-
}, {
|
193
|
-
a: 1
|
194
|
-
}, false]])('%s', function (_name, argType, args, globals, expected) {
|
195
|
-
// @ts-ignore
|
196
|
-
expect((0, _includeConditionalArg.includeConditionalArg)(argType, args, globals)).toBe(expected);
|
197
|
-
});
|
198
|
-
});
|
199
|
-
describe('neq', function () {
|
200
|
-
it.each([['scalar true', {
|
201
|
-
"if": {
|
202
|
-
arg: 'a',
|
203
|
-
neq: 1
|
204
|
-
}
|
205
|
-
}, {
|
206
|
-
a: 2
|
207
|
-
}, {}, true], ['scalar false', {
|
208
|
-
"if": {
|
209
|
-
arg: 'a',
|
210
|
-
neq: 1
|
211
|
-
}
|
212
|
-
}, {
|
213
|
-
a: 1
|
214
|
-
}, {
|
215
|
-
a: 2
|
216
|
-
}, false]])('%s', function (_name, argType, args, globals, expected) {
|
217
|
-
// @ts-ignore
|
218
|
-
expect((0, _includeConditionalArg.includeConditionalArg)(argType, args, globals)).toBe(expected);
|
219
|
-
});
|
220
|
-
});
|
221
|
-
});
|
222
|
-
describe('globals', function () {
|
223
|
-
describe('truthy', function () {
|
224
|
-
it.each([['implicit true', {
|
225
|
-
"if": {
|
226
|
-
global: 'a'
|
227
|
-
}
|
228
|
-
}, {}, {
|
229
|
-
a: 1
|
230
|
-
}, true], ['implicit undefined', {
|
231
|
-
"if": {
|
232
|
-
global: 'a'
|
233
|
-
}
|
234
|
-
}, {}, {}, false], ['truthy true', {
|
235
|
-
"if": {
|
236
|
-
global: 'a',
|
237
|
-
truthy: true
|
238
|
-
}
|
239
|
-
}, {}, {
|
240
|
-
a: 0
|
241
|
-
}, false], ['truthy false', {
|
242
|
-
"if": {
|
243
|
-
global: 'a',
|
244
|
-
truthy: false
|
245
|
-
}
|
246
|
-
}, {}, {
|
247
|
-
a: 0
|
248
|
-
}, true]])('%s', function (_name, argType, args, globals, expected) {
|
249
|
-
// @ts-ignore
|
250
|
-
expect((0, _includeConditionalArg.includeConditionalArg)(argType, args, globals)).toBe(expected);
|
251
|
-
});
|
252
|
-
});
|
253
|
-
describe('exists', function () {
|
254
|
-
it.each([['implicit exist true', {
|
255
|
-
"if": {
|
256
|
-
global: 'a',
|
257
|
-
exists: true
|
258
|
-
}
|
259
|
-
}, {}, {
|
260
|
-
a: 1
|
261
|
-
}, true], ['implicit exist false', {
|
262
|
-
"if": {
|
263
|
-
global: 'a',
|
264
|
-
exists: true
|
265
|
-
}
|
266
|
-
}, {
|
267
|
-
a: 1
|
268
|
-
}, {}, false]])('%s', function (_name, argType, args, globals, expected) {
|
269
|
-
// @ts-ignore
|
270
|
-
expect((0, _includeConditionalArg.includeConditionalArg)(argType, args, globals)).toBe(expected);
|
271
|
-
});
|
272
|
-
});
|
273
|
-
describe('eq', function () {
|
274
|
-
it.each([['scalar true', {
|
275
|
-
"if": {
|
276
|
-
global: 'a',
|
277
|
-
eq: 1
|
278
|
-
}
|
279
|
-
}, {}, {
|
280
|
-
a: 1
|
281
|
-
}, true], ['scalar false', {
|
282
|
-
"if": {
|
283
|
-
arg: 'a',
|
284
|
-
eq: 1
|
285
|
-
}
|
286
|
-
}, {
|
287
|
-
a: 2
|
288
|
-
}, {
|
289
|
-
a: 1
|
290
|
-
}, false]])('%s', function (_name, argType, args, globals, expected) {
|
291
|
-
// @ts-ignore
|
292
|
-
expect((0, _includeConditionalArg.includeConditionalArg)(argType, args, globals)).toBe(expected);
|
293
|
-
});
|
294
|
-
});
|
295
|
-
describe('neq', function () {
|
296
|
-
it.each([['scalar true', {
|
297
|
-
"if": {
|
298
|
-
global: 'a',
|
299
|
-
neq: 1
|
300
|
-
}
|
301
|
-
}, {}, {
|
302
|
-
a: 2
|
303
|
-
}, true], ['scalar false', {
|
304
|
-
"if": {
|
305
|
-
global: 'a',
|
306
|
-
neq: 1
|
307
|
-
}
|
308
|
-
}, {
|
309
|
-
a: 2
|
310
|
-
}, {
|
311
|
-
a: 1
|
312
|
-
}, false]])('%s', function (_name, argType, args, globals, expected) {
|
313
|
-
// @ts-ignore
|
314
|
-
expect((0, _includeConditionalArg.includeConditionalArg)(argType, args, globals)).toBe(expected);
|
315
|
-
});
|
316
|
-
});
|
317
|
-
});
|
318
|
-
});
|