@interactors/core 0.3.0 → 1.0.0-effection.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/cjs/constructor.js +66 -143
- package/dist/cjs/constructor.js.map +1 -1
- package/dist/cjs/converge.js +3 -5
- package/dist/cjs/converge.js.map +1 -1
- package/dist/cjs/format.js +50 -0
- package/dist/cjs/format.js.map +1 -0
- package/dist/cjs/index.js +1 -20
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/inspector.js +3 -2
- package/dist/cjs/inspector.js.map +1 -1
- package/dist/cjs/interaction.js +43 -35
- package/dist/cjs/interaction.js.map +1 -1
- package/dist/cjs/match.js +17 -7
- package/dist/cjs/match.js.map +1 -1
- package/dist/cjs/matcher.js +13 -1
- package/dist/cjs/matcher.js.map +1 -1
- package/dist/cjs/matchers/and.js +3 -0
- package/dist/cjs/matchers/and.js.map +1 -1
- package/dist/cjs/matchers/every.js +3 -0
- package/dist/cjs/matchers/every.js.map +1 -1
- package/dist/cjs/matchers/including.js +4 -0
- package/dist/cjs/matchers/including.js.map +1 -1
- package/dist/cjs/matchers/matching.js +4 -0
- package/dist/cjs/matchers/matching.js.map +1 -1
- package/dist/cjs/matchers/not.js +3 -0
- package/dist/cjs/matchers/not.js.map +1 -1
- package/dist/cjs/matchers/or.js +3 -0
- package/dist/cjs/matchers/or.js.map +1 -1
- package/dist/cjs/matchers/some.js +3 -0
- package/dist/cjs/matchers/some.js.map +1 -1
- package/dist/cjs/resolvers.js +98 -0
- package/dist/cjs/resolvers.js.map +1 -0
- package/dist/cjs/serialize.js +48 -0
- package/dist/cjs/serialize.js.map +1 -0
- package/dist/constructor.d.ts +3 -10
- package/dist/constructor.d.ts.map +1 -1
- package/dist/converge.d.ts +2 -1
- package/dist/converge.d.ts.map +1 -1
- package/dist/esm/constructor.js +64 -134
- package/dist/esm/constructor.js.map +1 -1
- package/dist/esm/converge.js +3 -5
- package/dist/esm/converge.js.map +1 -1
- package/dist/esm/{format-table.js → format.js} +19 -1
- package/dist/esm/format.js.map +1 -0
- package/dist/esm/index.js +0 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/inspector.js +3 -2
- package/dist/esm/inspector.js.map +1 -1
- package/dist/esm/interaction.js +40 -29
- package/dist/esm/interaction.js.map +1 -1
- package/dist/esm/match.js +17 -7
- package/dist/esm/match.js.map +1 -1
- package/dist/esm/matcher.js +11 -0
- package/dist/esm/matcher.js.map +1 -1
- package/dist/esm/matchers/and.js +4 -1
- package/dist/esm/matchers/and.js.map +1 -1
- package/dist/esm/matchers/every.js +4 -1
- package/dist/esm/matchers/every.js.map +1 -1
- package/dist/esm/matchers/including.js +4 -0
- package/dist/esm/matchers/including.js.map +1 -1
- package/dist/esm/matchers/matching.js +4 -0
- package/dist/esm/matchers/matching.js.map +1 -1
- package/dist/esm/matchers/not.js +4 -1
- package/dist/esm/matchers/not.js.map +1 -1
- package/dist/esm/matchers/or.js +4 -1
- package/dist/esm/matchers/or.js.map +1 -1
- package/dist/esm/matchers/some.js +4 -1
- package/dist/esm/matchers/some.js.map +1 -1
- package/dist/esm/resolvers.js +88 -0
- package/dist/esm/resolvers.js.map +1 -0
- package/dist/esm/serialize.js +43 -0
- package/dist/esm/serialize.js.map +1 -0
- package/dist/format.d.ts +10 -0
- package/dist/format.d.ts.map +1 -0
- package/dist/index.d.ts +4 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/inspector.d.ts +2 -2
- package/dist/inspector.d.ts.map +1 -1
- package/dist/interaction.d.ts +38 -10
- package/dist/interaction.d.ts.map +1 -1
- package/dist/match.d.ts +5 -5
- package/dist/match.d.ts.map +1 -1
- package/dist/matcher.d.ts +2 -0
- package/dist/matcher.d.ts.map +1 -1
- package/dist/matchers/and.d.ts.map +1 -1
- package/dist/matchers/every.d.ts.map +1 -1
- package/dist/matchers/including.d.ts.map +1 -1
- package/dist/matchers/matching.d.ts.map +1 -1
- package/dist/matchers/not.d.ts.map +1 -1
- package/dist/matchers/or.d.ts.map +1 -1
- package/dist/matchers/some.d.ts.map +1 -1
- package/dist/resolvers.d.ts +9 -0
- package/dist/resolvers.d.ts.map +1 -0
- package/dist/serialize.d.ts +13 -0
- package/dist/serialize.d.ts.map +1 -0
- package/dist/specification.d.ts +49 -51
- package/dist/specification.d.ts.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +3 -3
- package/src/constructor.ts +76 -160
- package/src/converge.ts +3 -6
- package/src/format.ts +58 -0
- package/src/index.ts +4 -6
- package/src/inspector.ts +5 -4
- package/src/interaction.ts +85 -36
- package/src/match.ts +23 -15
- package/src/matcher.ts +11 -0
- package/src/matchers/and.ts +4 -1
- package/src/matchers/every.ts +4 -1
- package/src/matchers/including.ts +4 -1
- package/src/matchers/matching.ts +4 -1
- package/src/matchers/not.ts +4 -1
- package/src/matchers/or.ts +4 -1
- package/src/matchers/some.ts +4 -1
- package/src/resolvers.ts +100 -0
- package/src/serialize.ts +54 -0
- package/src/specification.ts +58 -61
- package/CHANGELOG.md +0 -14
- package/dist/cjs/dispatch.js +0 -34
- package/dist/cjs/dispatch.js.map +0 -1
- package/dist/cjs/element/fill-in.js +0 -71
- package/dist/cjs/element/fill-in.js.map +0 -1
- package/dist/cjs/focused.js +0 -47
- package/dist/cjs/focused.js.map +0 -1
- package/dist/cjs/format-table.js +0 -30
- package/dist/cjs/format-table.js.map +0 -1
- package/dist/cjs/perform.js +0 -13
- package/dist/cjs/perform.js.map +0 -1
- package/dist/dispatch.d.ts +0 -6
- package/dist/dispatch.d.ts.map +0 -1
- package/dist/element/fill-in.d.ts +0 -12
- package/dist/element/fill-in.d.ts.map +0 -1
- package/dist/esm/dispatch.js +0 -26
- package/dist/esm/dispatch.js.map +0 -1
- package/dist/esm/element/fill-in.js +0 -67
- package/dist/esm/element/fill-in.js.map +0 -1
- package/dist/esm/focused.js +0 -41
- package/dist/esm/focused.js.map +0 -1
- package/dist/esm/format-table.js.map +0 -1
- package/dist/esm/perform.js +0 -9
- package/dist/esm/perform.js.map +0 -1
- package/dist/focused.d.ts +0 -30
- package/dist/focused.d.ts.map +0 -1
- package/dist/format-table.d.ts +0 -6
- package/dist/format-table.d.ts.map +0 -1
- package/dist/perform.d.ts +0 -3
- package/dist/perform.d.ts.map +0 -1
- package/src/dispatch.ts +0 -24
- package/src/element/fill-in.ts +0 -76
- package/src/focused.ts +0 -43
- package/src/format-table.ts +0 -34
- package/src/perform.ts +0 -11
package/dist/esm/constructor.js
CHANGED
|
@@ -1,95 +1,15 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
import { globals } from '@interactors/globals';
|
|
3
2
|
import { converge } from './converge';
|
|
4
3
|
import { FilterSet } from './filter-set';
|
|
5
4
|
import { Locator } from './locator';
|
|
6
5
|
import { MatchFilter, applyFilter } from './match';
|
|
7
|
-
import {
|
|
6
|
+
import { formatDescription } from './format';
|
|
8
7
|
import { FilterNotMatchingError } from './errors';
|
|
9
|
-
import {
|
|
10
|
-
import { Match } from './match';
|
|
11
|
-
import { NoSuchElementError, NotAbsentError, AmbiguousElementError } from './errors';
|
|
8
|
+
import { createInteraction } from './interaction';
|
|
12
9
|
import { isMatcher } from './matcher';
|
|
13
10
|
import { matching } from './matchers/matching';
|
|
11
|
+
import { hasMatchMatching, resolveEmpty, resolveFirst, resolveUnique, unsafeSyncResolveParent, unsafeSyncResolveUnique } from './resolvers';
|
|
14
12
|
const defaultLocator = (element) => element.textContent || "";
|
|
15
|
-
const defaultSelector = 'div';
|
|
16
|
-
export function findElements(parentElement, interactor) {
|
|
17
|
-
if (typeof (interactor.specification.selector) === 'function') {
|
|
18
|
-
return interactor.specification.selector(parentElement);
|
|
19
|
-
}
|
|
20
|
-
else if (interactor.specification.selector === ':root') {
|
|
21
|
-
// this is a bit of a hack, because otherwise there isn't a good way of selecting the root element
|
|
22
|
-
return [parentElement.ownerDocument.querySelector(':root')];
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
return Array.from(parentElement.querySelectorAll(interactor.specification.selector || defaultSelector));
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
function findMatches(parentElement, interactor) {
|
|
29
|
-
if (!interactor.name) {
|
|
30
|
-
throw new Error('One of your interactors was created without a name. Please provide a label for your interactor:\n\tHTML.extend(\'my interactor\') || createInteractor(\'my interactor\')');
|
|
31
|
-
}
|
|
32
|
-
return findElements(parentElement, interactor).map((e) => new Match(e, interactor.filter, interactor.locator));
|
|
33
|
-
}
|
|
34
|
-
function findMatchesMatching(parentElement, interactor) {
|
|
35
|
-
return findMatches(parentElement, interactor).filter((m) => m.matches);
|
|
36
|
-
}
|
|
37
|
-
function findMatchesNonEmpty(parentElement, interactor) {
|
|
38
|
-
let matches = findMatches(parentElement, interactor);
|
|
39
|
-
let matching = matches.filter((m) => m.matches);
|
|
40
|
-
if (matching.length > 0) {
|
|
41
|
-
return matching;
|
|
42
|
-
}
|
|
43
|
-
else if (matches.length === 0) {
|
|
44
|
-
throw new NoSuchElementError(`did not find ${description(interactor)}`);
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
let table = formatTable({
|
|
48
|
-
headers: interactor.locator ? [interactor.name, ...interactor.filter.asTableHeader()] : interactor.filter.asTableHeader(),
|
|
49
|
-
rows: matches.slice().sort((a, b) => b.sortWeight - a.sortWeight).map((m) => m.asTableRow()),
|
|
50
|
-
});
|
|
51
|
-
throw new NoSuchElementError(`did not find ${description(interactor)}, did you mean one of:\n\n${table}`);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
// Given a parent element, and an interactor, find exactly one matching element
|
|
55
|
-
// and return it. If no elements match, raise an error. If more than one
|
|
56
|
-
// element matches, raise an error.
|
|
57
|
-
export function resolveUnique(parentElement, interactor) {
|
|
58
|
-
let matching = findMatchesNonEmpty(parentElement, interactor);
|
|
59
|
-
if (matching.length === 1) {
|
|
60
|
-
return matching[0].element;
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
let alternatives = matching.map((m) => '- ' + m.elementDescription());
|
|
64
|
-
throw new AmbiguousElementError(`${description(interactor)} matches multiple elements:\n\n${alternatives.join('\n')}`);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
// Given a parent element, and an interactor, find all matching elements and
|
|
68
|
-
// return them. If no elements match, raise an error.
|
|
69
|
-
export function resolveNonEmpty(parentElement, interactor) {
|
|
70
|
-
return findMatchesNonEmpty(parentElement, interactor).map(m => m.element);
|
|
71
|
-
}
|
|
72
|
-
// Given a parent element, and an interactor, check if there are any matching
|
|
73
|
-
// elements, and throw an error if there are. Otherwise return undefined.
|
|
74
|
-
export function resolveEmpty(parentElement, interactor) {
|
|
75
|
-
let matching = findMatchesMatching(parentElement, interactor);
|
|
76
|
-
if (matching.length !== 0) {
|
|
77
|
-
let alternatives = matching.map((m) => '- ' + m.elementDescription());
|
|
78
|
-
throw new NotAbsentError(`${description(interactor)} exists but should not:\n\n${alternatives.join('\n')}`);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
function ownDescription(options) {
|
|
82
|
-
if (options.locator) {
|
|
83
|
-
return `${options.name} ${options.locator.description} ${options.filter.description}`.trim();
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
return `${options.name} ${options.filter.description}`.trim();
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
function description(options) {
|
|
90
|
-
let ancestorsAndSelf = options.ancestors.concat(options);
|
|
91
|
-
return ancestorsAndSelf.reverse().map(ownDescription).join(' within ');
|
|
92
|
-
}
|
|
93
13
|
/**
|
|
94
14
|
* Removes any default values for a filter from the lookup if that filter is present in the
|
|
95
15
|
* assertion. Otherwise, it is not possible to make an assertion on a filter that might conflict
|
|
@@ -108,26 +28,26 @@ function getLookupFilterForAssertion(filter, filters) {
|
|
|
108
28
|
}
|
|
109
29
|
return lookupFilter;
|
|
110
30
|
}
|
|
111
|
-
export function
|
|
112
|
-
return options.ancestors.reduce(resolveUnique, globals.document.documentElement);
|
|
113
|
-
}
|
|
114
|
-
export function unsafeSyncResolveUnique(options) {
|
|
115
|
-
return resolveUnique(unsafeSyncResolveParent(options), options);
|
|
116
|
-
}
|
|
117
|
-
export function instantiateBaseInteractor(options, resolver) {
|
|
31
|
+
export function instantiateInteractor(options, resolver) {
|
|
118
32
|
let interactor = {
|
|
119
33
|
options,
|
|
120
34
|
get description() {
|
|
121
|
-
return
|
|
35
|
+
return formatDescription(options);
|
|
122
36
|
},
|
|
123
37
|
perform(fn) {
|
|
124
|
-
return
|
|
38
|
+
return createInteraction('action', {
|
|
39
|
+
name: "perform",
|
|
40
|
+
interactor,
|
|
41
|
+
description: `run perform on ${formatDescription(options)}`,
|
|
42
|
+
run: (interactor) => converge(() => fn(resolver(interactor.options))),
|
|
43
|
+
});
|
|
125
44
|
},
|
|
126
45
|
assert(fn) {
|
|
127
|
-
return
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
}
|
|
46
|
+
return createInteraction('assertion', {
|
|
47
|
+
name: "assert",
|
|
48
|
+
interactor,
|
|
49
|
+
description: `${formatDescription(options)} asserts`,
|
|
50
|
+
run: (interactor) => converge(() => { fn(resolver(interactor.options)); }),
|
|
131
51
|
});
|
|
132
52
|
},
|
|
133
53
|
has(filters) {
|
|
@@ -135,16 +55,46 @@ export function instantiateBaseInteractor(options, resolver) {
|
|
|
135
55
|
},
|
|
136
56
|
is(filters) {
|
|
137
57
|
let filter = new FilterSet(options.specification, filters);
|
|
138
|
-
return
|
|
139
|
-
|
|
140
|
-
|
|
58
|
+
return createInteraction('assertion', {
|
|
59
|
+
name: "is",
|
|
60
|
+
interactor,
|
|
61
|
+
filters,
|
|
62
|
+
description: `${formatDescription(options)} matches filters: ${filter.description}`,
|
|
63
|
+
run: (interactor) => converge(() => {
|
|
64
|
+
let element = resolver({ ...interactor.options, filter: getLookupFilterForAssertion(interactor.options.filter, filters) });
|
|
141
65
|
let match = new MatchFilter(element, filter);
|
|
142
66
|
if (!match.matches) {
|
|
143
|
-
throw new FilterNotMatchingError(`${
|
|
67
|
+
throw new FilterNotMatchingError(`${formatDescription(options)} does not match filters:\n\n${match.formatAsExpectations()}`);
|
|
144
68
|
}
|
|
145
|
-
})
|
|
69
|
+
}),
|
|
146
70
|
});
|
|
147
71
|
},
|
|
72
|
+
find(child) {
|
|
73
|
+
return instantiateInteractor({
|
|
74
|
+
...child.options,
|
|
75
|
+
ancestors: [...options.ancestors, options, ...child.options.ancestors]
|
|
76
|
+
}, resolver);
|
|
77
|
+
},
|
|
78
|
+
exists() {
|
|
79
|
+
return createInteraction('assertion', {
|
|
80
|
+
name: 'exists',
|
|
81
|
+
interactor,
|
|
82
|
+
description: `${formatDescription(options)} exists`,
|
|
83
|
+
run: (interactor) => converge(() => {
|
|
84
|
+
resolveFirst(unsafeSyncResolveParent(interactor.options), options);
|
|
85
|
+
}),
|
|
86
|
+
}, (element) => hasMatchMatching(element, options));
|
|
87
|
+
},
|
|
88
|
+
absent() {
|
|
89
|
+
return createInteraction('assertion', {
|
|
90
|
+
name: 'absent',
|
|
91
|
+
interactor,
|
|
92
|
+
description: `${formatDescription(options)} does not exist`,
|
|
93
|
+
run: (interactor) => converge(() => {
|
|
94
|
+
resolveEmpty(unsafeSyncResolveParent(interactor.options), options);
|
|
95
|
+
}),
|
|
96
|
+
}, (element) => !hasMatchMatching(element, options));
|
|
97
|
+
},
|
|
148
98
|
apply(parentElement) {
|
|
149
99
|
let element = [...options.ancestors, options].reduce(resolveUnique, parentElement);
|
|
150
100
|
return applyFilter(options.specification.locator || defaultLocator, element);
|
|
@@ -158,7 +108,13 @@ export function instantiateBaseInteractor(options, resolver) {
|
|
|
158
108
|
if (args.length) {
|
|
159
109
|
actionDescription += ` with ` + args.map((a) => JSON.stringify(a)).join(', ');
|
|
160
110
|
}
|
|
161
|
-
return
|
|
111
|
+
return createInteraction('action', {
|
|
112
|
+
name: actionName,
|
|
113
|
+
interactor,
|
|
114
|
+
args,
|
|
115
|
+
description: `${actionDescription} on ${formatDescription(options)}`,
|
|
116
|
+
run: (interactor) => action(interactor, ...args)
|
|
117
|
+
});
|
|
162
118
|
},
|
|
163
119
|
configurable: true,
|
|
164
120
|
writable: true,
|
|
@@ -170,8 +126,11 @@ export function instantiateBaseInteractor(options, resolver) {
|
|
|
170
126
|
if (!interactor.hasOwnProperty(filterName)) {
|
|
171
127
|
Object.defineProperty(interactor, filterName, {
|
|
172
128
|
value: function () {
|
|
173
|
-
return
|
|
174
|
-
|
|
129
|
+
return createInteraction('assertion', {
|
|
130
|
+
name: filterName,
|
|
131
|
+
interactor,
|
|
132
|
+
description: `${filterName} of ${formatDescription(options)}`,
|
|
133
|
+
run: (interactor) => converge(() => applyFilter(filter, resolver(interactor.options))),
|
|
175
134
|
}, (parentElement) => {
|
|
176
135
|
let element = [...options.ancestors, options].reduce(resolveUnique, parentElement);
|
|
177
136
|
return applyFilter(filter, element);
|
|
@@ -185,35 +144,6 @@ export function instantiateBaseInteractor(options, resolver) {
|
|
|
185
144
|
}
|
|
186
145
|
return interactor;
|
|
187
146
|
}
|
|
188
|
-
export function instantiateInteractor(options) {
|
|
189
|
-
let interactor = instantiateBaseInteractor(options, unsafeSyncResolveUnique);
|
|
190
|
-
return Object.assign(interactor, {
|
|
191
|
-
find(child) {
|
|
192
|
-
return instantiateInteractor({
|
|
193
|
-
...child.options,
|
|
194
|
-
ancestors: [...options.ancestors, options, ...child.options.ancestors]
|
|
195
|
-
});
|
|
196
|
-
},
|
|
197
|
-
exists() {
|
|
198
|
-
return checkFilter(`${description(options)} exists`, () => {
|
|
199
|
-
return converge(() => {
|
|
200
|
-
resolveNonEmpty(unsafeSyncResolveParent(options), options);
|
|
201
|
-
});
|
|
202
|
-
}, (element) => {
|
|
203
|
-
return findMatchesMatching(element, options).length > 0;
|
|
204
|
-
});
|
|
205
|
-
},
|
|
206
|
-
absent() {
|
|
207
|
-
return checkFilter(`${description(options)} does not exist`, () => {
|
|
208
|
-
return converge(() => {
|
|
209
|
-
resolveEmpty(unsafeSyncResolveParent(options), options);
|
|
210
|
-
});
|
|
211
|
-
}, (element) => {
|
|
212
|
-
return findMatchesMatching(element, options).length === 0;
|
|
213
|
-
});
|
|
214
|
-
}
|
|
215
|
-
});
|
|
216
|
-
}
|
|
217
147
|
export function createConstructor(name, specification) {
|
|
218
148
|
function initInteractor(...args) {
|
|
219
149
|
let locator, filter;
|
|
@@ -225,7 +155,7 @@ export function createConstructor(name, specification) {
|
|
|
225
155
|
else {
|
|
226
156
|
filter = new FilterSet(specification, args[0] || {});
|
|
227
157
|
}
|
|
228
|
-
return instantiateInteractor({ name, specification, filter, locator, ancestors: [] });
|
|
158
|
+
return instantiateInteractor({ name, specification, filter, locator, ancestors: [] }, unsafeSyncResolveUnique);
|
|
229
159
|
}
|
|
230
160
|
return Object.assign(initInteractor, {
|
|
231
161
|
selector: (value) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constructor.js","sourceRoot":"","sources":["../../src/constructor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"constructor.js","sourceRoot":"","sources":["../../src/constructor.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/converge.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
+
import { sleep } from '@effection/core';
|
|
1
2
|
import { performance } from 'performance-api';
|
|
2
3
|
import { globals } from '@interactors/globals';
|
|
3
|
-
function
|
|
4
|
-
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
5
|
-
}
|
|
6
|
-
export async function converge(fn) {
|
|
4
|
+
export function* converge(fn) {
|
|
7
5
|
let startTime = performance.now();
|
|
8
6
|
while (true) {
|
|
9
7
|
try {
|
|
@@ -15,7 +13,7 @@ export async function converge(fn) {
|
|
|
15
13
|
throw e;
|
|
16
14
|
}
|
|
17
15
|
else {
|
|
18
|
-
|
|
16
|
+
yield sleep(1);
|
|
19
17
|
}
|
|
20
18
|
}
|
|
21
19
|
}
|
package/dist/esm/converge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"converge.js","sourceRoot":"","sources":["../../src/converge.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"converge.js","sourceRoot":"","sources":["../../src/converge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAE9C,MAAM,SAAS,CAAC,CAAC,QAAQ,CAAI,EAAW;IACtC,IAAI,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAClC,OAAM,IAAI,EAAE;QACV,IAAI;YACF,OAAO,EAAE,EAAE,CAAC;SACb;QAAC,OAAM,CAAC,EAAE;YACT,IAAI,IAAI,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACzC,IAAG,IAAI,GAAG,OAAO,CAAC,iBAAiB,EAAE;gBACnC,MAAM,CAAC,CAAC;aACT;iBAAM;gBACL,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;aAChB;SACF;KACF;AACH,CAAC"}
|
|
@@ -23,4 +23,22 @@ export function formatTable(options) {
|
|
|
23
23
|
...options.rows.map((row) => formatRow(row))
|
|
24
24
|
].join('\n');
|
|
25
25
|
}
|
|
26
|
-
|
|
26
|
+
function ownDescription(options) {
|
|
27
|
+
if (options.locator) {
|
|
28
|
+
return `${options.name} ${options.locator.description} ${options.filter.description}`.trim();
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
return `${options.name} ${options.filter.description}`.trim();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export function formatDescription(options) {
|
|
35
|
+
let ancestorsAndSelf = options.ancestors.concat(options);
|
|
36
|
+
return ancestorsAndSelf.reverse().map(ownDescription).join(' within ');
|
|
37
|
+
}
|
|
38
|
+
export function formatMatchesTable(interactor, matches) {
|
|
39
|
+
return formatTable({
|
|
40
|
+
headers: interactor.locator ? [interactor.name, ...interactor.filter.asTableHeader()] : interactor.filter.asTableHeader(),
|
|
41
|
+
rows: matches.slice().sort((a, b) => b.sortWeight - a.sortWeight).map((m) => m.asTableRow()),
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=format.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/format.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
export { isInteraction } from './interaction';
|
|
2
2
|
export { createInteractor } from './create-interactor';
|
|
3
3
|
export { createInspector } from './inspector';
|
|
4
|
-
export { perform } from './perform';
|
|
5
|
-
export { focused, focus, blur } from './focused';
|
|
6
4
|
export { isVisible } from 'element-is-visible';
|
|
7
|
-
export * from './dispatch';
|
|
8
5
|
export { including } from './matchers/including';
|
|
9
6
|
export { matching } from './matchers/matching';
|
|
10
7
|
export { and } from './matchers/and';
|
|
@@ -12,6 +9,5 @@ export { or } from './matchers/or';
|
|
|
12
9
|
export { not } from './matchers/not';
|
|
13
10
|
export { some } from './matchers/some';
|
|
14
11
|
export { every } from './matchers/every';
|
|
15
|
-
export { fillIn } from './element/fill-in';
|
|
16
12
|
export { click } from './element/click';
|
|
17
13
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAwD,aAAa,EAAE,MAAM,eAAe,CAAC;AACpG,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACnC,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/esm/inspector.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
import {
|
|
2
|
+
import { instantiateInteractor } from "./constructor";
|
|
3
|
+
import { findElements, unsafeSyncResolveParent } from './resolvers';
|
|
3
4
|
export function createInspector(constructor, parentElement) {
|
|
4
5
|
// NOTE: Wait for https://github.com/thefrontside/bigtest/pull/895 to use specification instead
|
|
5
6
|
let options = constructor().options;
|
|
6
7
|
return {
|
|
7
8
|
all() {
|
|
8
9
|
let elements = findElements(parentElement !== null && parentElement !== void 0 ? parentElement : unsafeSyncResolveParent(options), options);
|
|
9
|
-
return elements.map(element => (Object.assign(
|
|
10
|
+
return elements.map(element => (Object.assign(instantiateInteractor(options, () => element), {
|
|
10
11
|
element,
|
|
11
12
|
find(constructor) {
|
|
12
13
|
return createInspector(constructor, element);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspector.js","sourceRoot":"","sources":["../../src/inspector.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAEvD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"inspector.js","sourceRoot":"","sources":["../../src/inspector.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAEvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAmBnE,MAAM,UAAU,eAAe,CAC7B,WAAe,EACf,aAAuB;IAEvB,+FAA+F;IAC/F,IAAI,OAAO,GAAG,WAAW,EAAE,CAAC,OAAoC,CAAA;IAChE,OAAO;QACL,GAAG;YACD,IAAI,QAAQ,GAAG,YAAY,CAAiB,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,uBAAuB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;YACxG,OAAO,QAAQ,CAAC,GAAG,CACjB,OAAO,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CACvB,qBAAqB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAA2E,EAAE;gBACzH,OAAO;gBACP,IAAI,CAAsD,WAAc;oBACtE,OAAO,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;gBAC9C,CAAC;aACF,CAAC,CAAC,CACJ,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/esm/interaction.js
CHANGED
|
@@ -1,45 +1,56 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
+
import { run, Symbol } from '@effection/core';
|
|
1
3
|
import { globals } from '@interactors/globals';
|
|
4
|
+
import { serializeInteractionOptions } from './serialize';
|
|
2
5
|
const interactionSymbol = Symbol.for('interaction');
|
|
3
6
|
export function isInteraction(x) {
|
|
4
7
|
return typeof x === 'object' && x != null && interactionSymbol in x;
|
|
5
8
|
}
|
|
6
|
-
function createInteraction(
|
|
7
|
-
let
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
export function createInteraction(type, options, apply) {
|
|
10
|
+
let task;
|
|
11
|
+
function operation(scope) {
|
|
12
|
+
let run = () => options.run(options.interactor);
|
|
13
|
+
return (globals.wrapInteraction
|
|
14
|
+
? globals.wrapInteraction(interaction, () => scope.run(run))
|
|
15
|
+
: globals.wrapAction(interaction.description, () => scope.run(run), type));
|
|
16
|
+
}
|
|
17
|
+
;
|
|
18
|
+
function action() {
|
|
19
|
+
if (!task) {
|
|
20
|
+
task = run(operation);
|
|
21
|
+
}
|
|
22
|
+
return task;
|
|
23
|
+
}
|
|
24
|
+
;
|
|
25
|
+
let serializedOptions = serializeInteractionOptions(type, options);
|
|
26
|
+
let interaction = {
|
|
27
|
+
type,
|
|
28
|
+
options: serializedOptions,
|
|
29
|
+
description: options.description,
|
|
30
|
+
interactor: options.interactor,
|
|
31
|
+
run: options.run,
|
|
10
32
|
action,
|
|
33
|
+
check: type === 'assertion' ? action : undefined,
|
|
34
|
+
code: () => serializedOptions.code(),
|
|
35
|
+
halt: () => action().halt(),
|
|
11
36
|
[interactionSymbol]: true,
|
|
12
|
-
[Symbol.toStringTag]: `[interaction ${description}]`,
|
|
37
|
+
[Symbol.toStringTag]: `[interaction ${options.description}]`,
|
|
38
|
+
[Symbol.operation]: operation,
|
|
13
39
|
then(onFulfill, onReject) {
|
|
14
|
-
|
|
15
|
-
promise = this.action();
|
|
16
|
-
}
|
|
17
|
-
return promise.then(onFulfill, onReject);
|
|
40
|
+
return action().then(onFulfill, onReject);
|
|
18
41
|
},
|
|
19
42
|
catch(onReject) {
|
|
20
|
-
|
|
21
|
-
promise = this.action();
|
|
22
|
-
}
|
|
23
|
-
return promise.catch(onReject);
|
|
43
|
+
return action().catch(onReject);
|
|
24
44
|
},
|
|
25
45
|
finally(handler) {
|
|
26
|
-
|
|
27
|
-
promise = this.action();
|
|
28
|
-
}
|
|
29
|
-
return promise.finally(handler);
|
|
46
|
+
return action().finally(handler);
|
|
30
47
|
}
|
|
31
48
|
};
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
39
|
-
export function interactionFilter(description, action, filter) {
|
|
40
|
-
return { apply: filter, ...interaction(description, action) };
|
|
41
|
-
}
|
|
42
|
-
export function checkFilter(description, action, filter) {
|
|
43
|
-
return { apply: filter, ...check(description, action) };
|
|
49
|
+
if (apply) {
|
|
50
|
+
return Object.assign(interaction, { apply });
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
return interaction;
|
|
54
|
+
}
|
|
44
55
|
}
|
|
45
56
|
//# sourceMappingURL=interaction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction.js","sourceRoot":"","sources":["../../src/interaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"interaction.js","sourceRoot":"","sources":["../../src/interaction.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,OAAO,EAAmB,GAAG,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAsD,OAAO,EAAmB,MAAM,sBAAsB,CAAC;AAEpH,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAE1D,MAAM,iBAAiB,GAAkB,MAAM,CAAC,GAAG,CAAC,aAAa,CAAQ,CAAC;AAE1E,MAAM,UAAU,aAAa,CAAC,CAAU;IACtC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,IAAI,IAAI,IAAI,iBAAiB,IAAI,CAAC,CAAA;AACrE,CAAC;AAyED,MAAM,UAAU,iBAAiB,CAA0B,IAAqB,EAAE,OAAiC,EAAE,KAA4B;IAC/I,IAAI,IAAa,CAAC;IAElB,SAAS,SAAS,CAAC,KAAW;QAC5B,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAEhD,OAAO,CAAC,OAAO,CAAC,eAAe;YAC7B,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5D,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAiB,CAAC;IAC/F,CAAC;IAAA,CAAC;IAEF,SAAS,MAAM;QACb,IAAG,CAAC,IAAI,EAAE;YACR,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;SACvB;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAA,CAAC;IAEF,IAAI,iBAAiB,GAAG,2BAA2B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAClE,IAAI,WAAW,GAAqC;QAClD,IAAI;QACJ,OAAO,EAAE,iBAAiB;QAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,MAAM;QACN,KAAK,EAAE,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;QAChD,IAAI,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE;QACpC,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;QAC3B,CAAC,iBAAiB,CAAC,EAAE,IAAI;QACzB,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,gBAAgB,OAAO,CAAC,WAAW,GAAG;QAC5D,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,SAAS;QAC7B,IAAI,CAAC,SAAS,EAAE,QAAQ;YACtB,OAAO,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;QACD,KAAK,CAAC,QAAQ;YACZ,OAAO,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,CAAC,OAAO;YACb,OAAO,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;KACF,CAAA;IACD,IAAI,KAAK,EAAE;QACT,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;KAC9C;SAAM;QACL,OAAO,WAAW,CAAC;KACpB;AACH,CAAC"}
|
package/dist/esm/match.js
CHANGED
|
@@ -8,7 +8,9 @@ export class Match {
|
|
|
8
8
|
this.locator = locator;
|
|
9
9
|
this.matchLocator = locator && new MatchLocator(element, locator);
|
|
10
10
|
this.matchFilter = new MatchFilter(element, filterSet);
|
|
11
|
-
|
|
11
|
+
}
|
|
12
|
+
get matches() {
|
|
13
|
+
return (this.matchLocator ? this.matchLocator.matches : true) && this.matchFilter.matches;
|
|
12
14
|
}
|
|
13
15
|
asTableHeader(name) {
|
|
14
16
|
if (this.matchLocator) {
|
|
@@ -44,7 +46,9 @@ export class MatchLocator {
|
|
|
44
46
|
this.locator = locator;
|
|
45
47
|
this.expected = locator.value;
|
|
46
48
|
this.actual = locator.apply(element);
|
|
47
|
-
|
|
49
|
+
}
|
|
50
|
+
get matches() {
|
|
51
|
+
return applyMatcher(this.expected, this.actual);
|
|
48
52
|
}
|
|
49
53
|
formatActual() {
|
|
50
54
|
return JSON.stringify(this.actual);
|
|
@@ -63,7 +67,9 @@ export class MatchFilter {
|
|
|
63
67
|
this.items = Object.entries(filter.all).map(([key, expected]) => {
|
|
64
68
|
return new MatchFilterItem(element, filter, key, expected);
|
|
65
69
|
});
|
|
66
|
-
|
|
70
|
+
}
|
|
71
|
+
get matches() {
|
|
72
|
+
return this.items.every((match) => match.matches);
|
|
67
73
|
}
|
|
68
74
|
asTableRow() {
|
|
69
75
|
return this.items.map((f) => f.description());
|
|
@@ -90,15 +96,19 @@ export class MatchFilterItem {
|
|
|
90
96
|
this.filter = filter;
|
|
91
97
|
this.key = key;
|
|
92
98
|
this.expected = expected;
|
|
99
|
+
}
|
|
100
|
+
get matches() {
|
|
101
|
+
return applyMatcher(this.expected, this.actual);
|
|
102
|
+
}
|
|
103
|
+
get actual() {
|
|
93
104
|
if (this.filter.specification.filters && this.filter.specification.filters[this.key]) {
|
|
94
105
|
let definition = this.filter.specification.filters[this.key];
|
|
95
|
-
if (typeof
|
|
96
|
-
|
|
106
|
+
if (typeof definition === 'function') {
|
|
107
|
+
return definition(this.element);
|
|
97
108
|
}
|
|
98
109
|
else {
|
|
99
|
-
|
|
110
|
+
return definition.apply(this.element);
|
|
100
111
|
}
|
|
101
|
-
this.matches = applyMatcher(this.expected, this.actual);
|
|
102
112
|
}
|
|
103
113
|
else {
|
|
104
114
|
throw new Error(`interactor does not define a filter named ${JSON.stringify(this.key)}`);
|
package/dist/esm/match.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"match.js","sourceRoot":"","sources":["../../src/match.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAgB,YAAY,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE3E,MAAM,KAAK,GAAG,CAAC,KAAc,EAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAE5D,MAAM,OAAO,KAAK;
|
|
1
|
+
{"version":3,"file":"match.js","sourceRoot":"","sources":["../../src/match.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAgB,YAAY,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE3E,MAAM,KAAK,GAAG,CAAC,KAAc,EAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAE5D,MAAM,OAAO,KAAK;IAIhB,YACS,OAAU,EACV,SAA0B,EAC1B,OAAoB;QAFpB,YAAO,GAAP,OAAO,CAAG;QACV,cAAS,GAAT,SAAS,CAAiB;QAC1B,YAAO,GAAP,OAAO,CAAa;QAE3B,IAAI,CAAC,YAAY,GAAG,OAAO,IAAI,IAAI,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAClE,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,OAAO;QACT,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;IAC5F,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,IAAG,IAAI,CAAC,YAAY,EAAE;YACpB,OAAO,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,CAAC;SAClD;aAAM;YACL,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC;SACvC;IACH,CAAC;IAED,UAAU;QACR,IAAG,IAAI,CAAC,YAAY,EAAE;YACpB,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC,CAAA;SAC3E;aAAM;YACL,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;SACtC;IACH,CAAC;IAED,IAAI,UAAU;;QACZ,OAAO,CAAC,CAAA,MAAA,IAAI,CAAC,YAAY,0CAAE,UAAU,KAAI,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC;IAC5E,CAAC;IAED,kBAAkB;QAChB,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAC7C,IAAI,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC3D,OAAO,GAAG,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAA;QACnD,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IAC1C,CAAC;CACF;AAED,MAAM,OAAO,YAAY;IAIvB,YACS,OAAU,EACV,OAAmB;QADnB,YAAO,GAAP,OAAO,CAAG;QACV,YAAO,GAAP,OAAO,CAAY;QAE1B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,OAAO;QACT,OAAO,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IACjD,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,WAAW;QACT,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;IACzD,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;CACF;AAED,MAAM,OAAO,WAAW;IAGtB,YACS,OAAU,EACV,MAAuB;QADvB,YAAO,GAAP,OAAO,CAAG;QACV,WAAM,GAAN,MAAM,CAAiB;QAE9B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,EAAE;YAC9D,OAAO,IAAI,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAA;QAC5D,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACnD,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/F,CAAC;CACF;AAED,8DAA8D;AAC9D,MAAM,UAAU,WAAW,CAAI,UAAoC,EAAE,OAAgB;IACnF,IAAG,OAAM,CAAC,UAAU,CAAC,KAAK,UAAU,EAAE;QACpC,OAAO,UAAU,CAAC,OAAO,CAAM,CAAC;KACjC;SAAM;QACL,OAAO,UAAU,CAAC,KAAK,CAAC,OAAO,CAAM,CAAC;KACvC;AACH,CAAC;AAED,MAAM,OAAO,eAAe;IAC1B,YACS,OAAU,EACV,MAAuB,EACvB,GAAW,EACX,QAAyB;QAHzB,YAAO,GAAP,OAAO,CAAG;QACV,WAAM,GAAN,MAAM,CAAiB;QACvB,QAAG,GAAH,GAAG,CAAQ;QACX,aAAQ,GAAR,QAAQ,CAAiB;IAC/B,CAAC;IAEJ,IAAI,OAAO;QACT,OAAO,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,MAAM;QACR,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACpF,IAAI,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC7D,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;gBACpC,OAAO,UAAU,CAAC,IAAI,CAAC,OAAO,CAAM,CAAC;aACtC;iBAAM;gBACL,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAM,CAAC;aAC5C;SACF;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,6CAA6C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SAC1F;IACH,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,cAAc;QACZ,OAAO,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,WAAW;QACT,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;IACzD,CAAC;IAED,mBAAmB;QACjB,OAAO;YACL,gBAAgB,IAAI,CAAC,GAAG,EAAE;YAC1B,gBAAgB,IAAI,CAAC,cAAc,EAAE,EAAE;YACvC,gBAAgB,IAAI,CAAC,YAAY,EAAE,EAAE;SACtC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACd,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;CACF"}
|
package/dist/esm/matcher.js
CHANGED
|
@@ -18,4 +18,15 @@ export function applyMatcher(value, actual) {
|
|
|
18
18
|
return isEqual(value, actual);
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
+
export function matcherCode(value) {
|
|
22
|
+
if (isMatcher(value) && value.code) {
|
|
23
|
+
return value.code();
|
|
24
|
+
}
|
|
25
|
+
else if (value instanceof RegExp) {
|
|
26
|
+
return value.toString();
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
return JSON.stringify(value);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
21
32
|
//# sourceMappingURL=matcher.js.map
|
package/dist/esm/matcher.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"matcher.js","sourceRoot":"","sources":["../../src/matcher.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"matcher.js","sourceRoot":"","sources":["../../src/matcher.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAUrC,MAAM,UAAU,SAAS,CAAI,KAAsB;IACjD,OAAO,KAAK,IAAI,OAAQ,KAAoB,CAAC,KAAK,KAAK,UAAU,IAAI,OAAQ,KAAoB,CAAC,WAAW,KAAK,UAAU,CAAC;AAC/H,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAI,KAAsB;IAC1D,IAAG,SAAS,CAAC,KAAK,CAAC,EAAE;QACnB,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;KAC5B;SAAM;QACL,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;KAC9B;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAI,KAAsB,EAAE,MAAS;IAC/D,IAAG,SAAS,CAAC,KAAK,CAAC,EAAE;QACnB,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KAC5B;SAAM;QACL,OAAO,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;KAC/B;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAI,KAAsB;IACnD,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE;QAClC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;KACrB;SAAM,IAAI,KAAK,YAAY,MAAM,EAAE;QAClC,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;KACzB;SAAM;QACL,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;KAC9B;AACH,CAAC"}
|