Fixed #1 - Fixed the whatsnew-** script for loading release notes into builds
Added test to ensure that release notes are parsed properly Updated to latest dependencies to fix security vulnerability Updated GH Actions Workflow to run test before updating tag Updated README.md to reflect proper whatsnew documentation.
This commit is contained in:
2
node_modules/jest-snapshot/build/State.d.ts
generated
vendored
2
node_modules/jest-snapshot/build/State.d.ts
generated
vendored
@@ -24,6 +24,7 @@ export default class SnapshotState {
|
||||
private _index;
|
||||
private _updateSnapshot;
|
||||
private _snapshotData;
|
||||
private _initialData;
|
||||
private _snapshotPath;
|
||||
private _inlineSnapshots;
|
||||
private _uncheckedKeys;
|
||||
@@ -37,6 +38,7 @@ export default class SnapshotState {
|
||||
constructor(snapshotPath: Config.Path, options: SnapshotStateOptions);
|
||||
markSnapshotsAsCheckedForTest(testName: string): void;
|
||||
private _addSnapshot;
|
||||
clear(): void;
|
||||
save(): {
|
||||
deleted: boolean;
|
||||
saved: boolean;
|
||||
|
||||
2
node_modules/jest-snapshot/build/State.d.ts.map
generated
vendored
2
node_modules/jest-snapshot/build/State.d.ts.map
generated
vendored
@@ -1 +1 @@
|
||||
{"version":3,"file":"State.d.ts","sourceRoot":"","sources":["../src/State.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAcnC,oBAAY,oBAAoB,GAAG;IACjC,cAAc,EAAE,MAAM,CAAC,mBAAmB,CAAC;IAC3C,WAAW,EAAE,MAAM,IAAI,GAAG,GAAG,CAAC;IAC9B,gBAAgB,EAAE,MAAM,QAAQ,CAAC;IACjC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,oBAAY,oBAAoB,GAAG;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,GAAG,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,aAAa;IAChC,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,MAAM,CAAU;IAExB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,gBAAgB,CAAwB;IAChD,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,iBAAiB,CAAiB;IAC1C,OAAO,CAAC,YAAY,CAAmB;IAEvC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;gBAEJ,YAAY,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,oBAAoB;IAsBpE,6BAA6B,CAAC,QAAQ,EAAE,MAAM;IAQ9C,OAAO,CAAC,YAAY;IAwBpB,IAAI;;;;IA8BJ,iBAAiB,IAAI,MAAM;IAI3B,gBAAgB,IAAI,KAAK,CAAC,MAAM,CAAC;IAIjC,mBAAmB,IAAI,IAAI;IAQ3B,KAAK,CAAC,EACJ,QAAQ,EACR,QAAQ,EACR,GAAG,EACH,cAAc,EACd,KAAK,GACN,EAAE,oBAAoB;;;;;;;IA4FvB,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM;CAYpD"}
|
||||
{"version":3,"file":"State.d.ts","sourceRoot":"","sources":["../src/State.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAcnC,oBAAY,oBAAoB,GAAG;IACjC,cAAc,EAAE,MAAM,CAAC,mBAAmB,CAAC;IAC3C,WAAW,EAAE,MAAM,IAAI,GAAG,GAAG,CAAC;IAC9B,gBAAgB,EAAE,MAAM,QAAQ,CAAC;IACjC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,oBAAY,oBAAoB,GAAG;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,GAAG,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,aAAa;IAChC,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,MAAM,CAAU;IAExB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,gBAAgB,CAAwB;IAChD,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,iBAAiB,CAAiB;IAC1C,OAAO,CAAC,YAAY,CAAmB;IAEvC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;gBAEJ,YAAY,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,oBAAoB;IAuBpE,6BAA6B,CAAC,QAAQ,EAAE,MAAM;IAQ9C,OAAO,CAAC,YAAY;IAwBpB,KAAK;IAWL,IAAI;;;;IA8BJ,iBAAiB,IAAI,MAAM;IAI3B,gBAAgB,IAAI,KAAK,CAAC,MAAM,CAAC;IAIjC,mBAAmB,IAAI,IAAI;IAQ3B,KAAK,CAAC,EACJ,QAAQ,EACR,QAAQ,EACR,GAAG,EACH,cAAc,EACd,KAAK,GACN,EAAE,oBAAoB;;;;;;;IA4FvB,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM;CAYpD"}
|
||||
14
node_modules/jest-snapshot/build/State.js
generated
vendored
14
node_modules/jest-snapshot/build/State.js
generated
vendored
@@ -50,6 +50,8 @@ class SnapshotState {
|
||||
|
||||
_defineProperty(this, '_snapshotData', void 0);
|
||||
|
||||
_defineProperty(this, '_initialData', void 0);
|
||||
|
||||
_defineProperty(this, '_snapshotPath', void 0);
|
||||
|
||||
_defineProperty(this, '_inlineSnapshots', void 0);
|
||||
@@ -79,6 +81,7 @@ class SnapshotState {
|
||||
data = _getSnapshotData.data,
|
||||
dirty = _getSnapshotData.dirty;
|
||||
|
||||
this._initialData = data;
|
||||
this._snapshotData = data;
|
||||
this._dirty = dirty;
|
||||
this._getBabelTraverse = options.getBabelTraverse;
|
||||
@@ -126,6 +129,17 @@ class SnapshotState {
|
||||
}
|
||||
}
|
||||
|
||||
clear() {
|
||||
this._snapshotData = this._initialData;
|
||||
this._inlineSnapshots = [];
|
||||
this._counters = new Map();
|
||||
this._index = 0;
|
||||
this.added = 0;
|
||||
this.matched = 0;
|
||||
this.unmatched = 0;
|
||||
this.updated = 0;
|
||||
}
|
||||
|
||||
save() {
|
||||
const hasExternalSnapshots = Object.keys(this._snapshotData).length;
|
||||
const hasInlineSnapshots = this._inlineSnapshots.length;
|
||||
|
||||
3
node_modules/jest-snapshot/build/index.d.ts
generated
vendored
3
node_modules/jest-snapshot/build/index.d.ts
generated
vendored
@@ -17,8 +17,9 @@ declare const JestSnapshot: {
|
||||
SnapshotState: typeof SnapshotState;
|
||||
addSerializer: (plugin: import("pretty-format/build/types").Plugin) => void;
|
||||
buildSnapshotResolver: (config: Config.ProjectConfig) => JestSnapshotResolver;
|
||||
cleanup: (hasteFS: import("../../jest-haste-map/build/HasteFS").default, update: Config.SnapshotUpdateState, snapshotResolver: JestSnapshotResolver) => {
|
||||
cleanup: (hasteFS: import("jest-haste-map/build/HasteFS").default, update: Config.SnapshotUpdateState, snapshotResolver: JestSnapshotResolver, testPathIgnorePatterns?: string[] | undefined) => {
|
||||
filesRemoved: number;
|
||||
filesRemovedList: string[];
|
||||
};
|
||||
getSerializers: () => import("pretty-format/build/types").Plugin[];
|
||||
isSnapshotPath: (path: string) => boolean;
|
||||
|
||||
2
node_modules/jest-snapshot/build/index.d.ts.map
generated
vendored
2
node_modules/jest-snapshot/build/index.d.ts.map
generated
vendored
@@ -1 +1 @@
|
||||
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAEnC,OAAO,EAAC,YAAY,EAAC,MAAM,QAAQ,CAAC;AAUpC,OAAO,EAGL,gBAAgB,IAAI,oBAAoB,EAEzC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,aAAa,MAAM,SAAS,CAAC;AAEpC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,aAAK,OAAO,GAAG,YAAY,GAAG;IAC5B,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAobF,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAajB,CAAC;AAEF,kBAAU,YAAY,CAAC;IACrB,KAAY,gBAAgB,GAAG,oBAAoB,CAAC;IACpD,KAAY,iBAAiB,GAAG,aAAa,CAAC;CAC/C;AAED,SAAS,YAAY,CAAC"}
|
||||
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAEnC,OAAO,EAAC,YAAY,EAAC,MAAM,QAAQ,CAAC;AAQpC,OAAO,EAGL,gBAAgB,IAAI,oBAAoB,EAEzC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,aAAa,MAAM,SAAS,CAAC;AAGpC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,aAAK,OAAO,GAAG,YAAY,GAAG;IAC5B,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAidF,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAajB,CAAC;AAEF,kBAAU,YAAY,CAAC;IACrB,KAAY,gBAAgB,GAAG,oBAAoB,CAAC;IACpD,KAAY,iBAAiB,GAAG,aAAa,CAAC;CAC/C;AAED,SAAS,YAAY,CAAC"}
|
||||
66
node_modules/jest-snapshot/build/index.js
generated
vendored
66
node_modules/jest-snapshot/build/index.js
generated
vendored
@@ -2,8 +2,6 @@
|
||||
|
||||
var _fs = _interopRequireDefault(require('fs'));
|
||||
|
||||
var _jestDiff = _interopRequireDefault(require('jest-diff'));
|
||||
|
||||
var _jestMatcherUtils = require('jest-matcher-utils');
|
||||
|
||||
var _snapshot_resolver = require('./snapshot_resolver');
|
||||
@@ -12,6 +10,8 @@ var _State = _interopRequireDefault(require('./State'));
|
||||
|
||||
var _plugins = require('./plugins');
|
||||
|
||||
var _print = require('./print');
|
||||
|
||||
var utils = _interopRequireWildcard(require('./utils'));
|
||||
|
||||
function _interopRequireWildcard(obj) {
|
||||
@@ -54,7 +54,8 @@ const DID_NOT_THROW = 'Received function did not throw'; // same as toThrow
|
||||
const NOT_SNAPSHOT_MATCHERS = `.${(0, _jestMatcherUtils.BOLD_WEIGHT)(
|
||||
'not'
|
||||
)} cannot be used with snapshot matchers`;
|
||||
const HINT_ARG = (0, _jestMatcherUtils.BOLD_WEIGHT)('hint');
|
||||
const HINT_ARG = 'hint';
|
||||
const HINT_COLOR = _jestMatcherUtils.BOLD_WEIGHT;
|
||||
const INLINE_SNAPSHOT_ARG = 'snapshot';
|
||||
const PROPERTY_MATCHERS_ARG = 'properties';
|
||||
const INDENTATION_REGEX = /^([^\S\n]*)\S/m; // Display name in report when matcher fails same as in snapshot file,
|
||||
@@ -121,22 +122,35 @@ function stripAddedIndentation(inlineSnapshot) {
|
||||
const fileExists = (filePath, hasteFS) =>
|
||||
hasteFS.exists(filePath) || jestExistsFile(filePath);
|
||||
|
||||
const cleanup = (hasteFS, update, snapshotResolver) => {
|
||||
const cleanup = (hasteFS, update, snapshotResolver, testPathIgnorePatterns) => {
|
||||
const pattern = '\\.' + _snapshot_resolver.EXTENSION + '$';
|
||||
const files = hasteFS.matchFiles(pattern);
|
||||
const filesRemoved = files.reduce((acc, snapshotFile) => {
|
||||
if (!fileExists(snapshotResolver.resolveTestPath(snapshotFile), hasteFS)) {
|
||||
let testIgnorePatternsRegex = null;
|
||||
|
||||
if (testPathIgnorePatterns && testPathIgnorePatterns.length > 0) {
|
||||
testIgnorePatternsRegex = new RegExp(testPathIgnorePatterns.join('|'));
|
||||
}
|
||||
|
||||
const list = files.filter(snapshotFile => {
|
||||
const testPath = snapshotResolver.resolveTestPath(snapshotFile); // ignore snapshots of ignored tests
|
||||
|
||||
if (testIgnorePatternsRegex && testIgnorePatternsRegex.test(testPath)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!fileExists(testPath, hasteFS)) {
|
||||
if (update === 'all') {
|
||||
_fs.default.unlinkSync(snapshotFile);
|
||||
}
|
||||
|
||||
return acc + 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
return acc;
|
||||
}, 0);
|
||||
return false;
|
||||
});
|
||||
return {
|
||||
filesRemoved
|
||||
filesRemoved: list.length,
|
||||
filesRemovedList: list
|
||||
};
|
||||
};
|
||||
|
||||
@@ -168,6 +182,14 @@ const toMatchSnapshot = function toMatchSnapshot(
|
||||
secondArgument
|
||||
};
|
||||
|
||||
if (expectedArgument === HINT_ARG) {
|
||||
options.expectedColor = HINT_COLOR;
|
||||
}
|
||||
|
||||
if (secondArgument === HINT_ARG) {
|
||||
options.secondArgumentColor = HINT_COLOR;
|
||||
}
|
||||
|
||||
if (arguments.length === 3 && !propertyMatchers) {
|
||||
throw new Error(
|
||||
'Property matchers must be an object.\n\nTo provide a snapshot test name without property matchers, use: toMatchSnapshot("name")'
|
||||
@@ -347,19 +369,20 @@ const _toMatchSnapshot = ({
|
||||
`${actual}`;
|
||||
} else {
|
||||
expected = (expected || '').trim();
|
||||
actual = (actual || '').trim();
|
||||
const diffMessage = (0, _jestDiff.default)(expected, actual, {
|
||||
aAnnotation: 'Snapshot',
|
||||
bAnnotation: 'Received',
|
||||
expand: snapshotState.expand
|
||||
});
|
||||
actual = (actual || '').trim(); // Assign to local variable because of declaration let expected:
|
||||
// TypeScript thinks it could change before report function is called.
|
||||
|
||||
const printed = (0, _print.printDiffOrStringified)(
|
||||
expected,
|
||||
actual,
|
||||
received,
|
||||
'Snapshot',
|
||||
'Received',
|
||||
snapshotState.expand
|
||||
);
|
||||
|
||||
report = () =>
|
||||
`Snapshot name: ${printName(currentTestName, hint, count)}\n\n` +
|
||||
(diffMessage ||
|
||||
(0, _jestMatcherUtils.EXPECTED_COLOR)('- ' + (expected || '')) +
|
||||
'\n' +
|
||||
(0, _jestMatcherUtils.RECEIVED_COLOR)('+ ' + actual));
|
||||
`Snapshot name: ${printName(currentTestName, hint, count)}\n\n` + printed;
|
||||
} // Passing the actual and expected objects so that a custom reporter
|
||||
// could access them, for example in order to display a custom visual diff,
|
||||
// or create a different error message
|
||||
@@ -391,6 +414,7 @@ const toThrowErrorMatchingSnapshot = function toThrowErrorMatchingSnapshot(
|
||||
const expectedArgument =
|
||||
typeof hint === 'string' && hint.length !== 0 ? HINT_ARG : '';
|
||||
const options = {
|
||||
expectedColor: HINT_COLOR,
|
||||
isNot: this.isNot,
|
||||
promise: this.promise,
|
||||
secondArgument: ''
|
||||
|
||||
10
node_modules/jest-snapshot/build/inline_snapshots.js
generated
vendored
10
node_modules/jest-snapshot/build/inline_snapshots.js
generated
vendored
@@ -154,7 +154,15 @@ const groupSnapshotsByFrame = groupSnapshotsBy(({frame: {line, column}}) =>
|
||||
const groupSnapshotsByFile = groupSnapshotsBy(({frame: {file}}) => file);
|
||||
|
||||
const indent = (snapshot, numIndents, indentation) => {
|
||||
const lines = snapshot.split('\n');
|
||||
const lines = snapshot.split('\n'); // Prevent re-identation of inline snapshots.
|
||||
|
||||
if (
|
||||
lines.length >= 2 &&
|
||||
lines[1].startsWith(indentation.repeat(numIndents + 1))
|
||||
) {
|
||||
return snapshot;
|
||||
}
|
||||
|
||||
return lines
|
||||
.map((line, index) => {
|
||||
if (index === 0) {
|
||||
|
||||
8
node_modules/jest-snapshot/build/print.d.ts
generated
vendored
Normal file
8
node_modules/jest-snapshot/build/print.d.ts
generated
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
/**
|
||||
* Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
|
||||
*
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*/
|
||||
export declare const printDiffOrStringified: (expectedSerializedTrimmed: string, receivedSerializedTrimmed: string, received: unknown, expectedLabel: string, receivedLabel: string, expand: boolean) => string;
|
||||
//# sourceMappingURL=print.d.ts.map
|
||||
1
node_modules/jest-snapshot/build/print.d.ts.map
generated
vendored
Normal file
1
node_modules/jest-snapshot/build/print.d.ts.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"print.d.ts","sourceRoot":"","sources":["../src/print.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA0CH,eAAO,MAAM,sBAAsB,oKAkFlC,CAAC"}
|
||||
174
node_modules/jest-snapshot/build/print.js
generated
vendored
Normal file
174
node_modules/jest-snapshot/build/print.js
generated
vendored
Normal file
@@ -0,0 +1,174 @@
|
||||
'use strict';
|
||||
|
||||
Object.defineProperty(exports, '__esModule', {
|
||||
value: true
|
||||
});
|
||||
exports.printDiffOrStringified = void 0;
|
||||
|
||||
var _jestDiff = _interopRequireWildcard(require('jest-diff'));
|
||||
|
||||
var _jestGetType = _interopRequireWildcard(require('jest-get-type'));
|
||||
|
||||
var _jestMatcherUtils = require('jest-matcher-utils');
|
||||
|
||||
var _prettyFormat = _interopRequireDefault(require('pretty-format'));
|
||||
|
||||
var _utils = require('./utils');
|
||||
|
||||
function _interopRequireDefault(obj) {
|
||||
return obj && obj.__esModule ? obj : {default: obj};
|
||||
}
|
||||
|
||||
function _interopRequireWildcard(obj) {
|
||||
if (obj && obj.__esModule) {
|
||||
return obj;
|
||||
} else {
|
||||
var newObj = {};
|
||||
if (obj != null) {
|
||||
for (var key in obj) {
|
||||
if (Object.prototype.hasOwnProperty.call(obj, key)) {
|
||||
var desc =
|
||||
Object.defineProperty && Object.getOwnPropertyDescriptor
|
||||
? Object.getOwnPropertyDescriptor(obj, key)
|
||||
: {};
|
||||
if (desc.get || desc.set) {
|
||||
Object.defineProperty(newObj, key, desc);
|
||||
} else {
|
||||
newObj[key] = obj[key];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
newObj.default = obj;
|
||||
return newObj;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
|
||||
*
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*/
|
||||
const isLineDiffable = received => {
|
||||
const receivedType = (0, _jestGetType.default)(received);
|
||||
|
||||
if ((0, _jestGetType.isPrimitive)(received)) {
|
||||
return typeof received === 'string' && received.includes('\n');
|
||||
}
|
||||
|
||||
if (
|
||||
receivedType === 'date' ||
|
||||
receivedType === 'function' ||
|
||||
receivedType === 'regexp'
|
||||
) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (received instanceof Error) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (
|
||||
receivedType === 'object' &&
|
||||
typeof received.asymmetricMatch === 'function'
|
||||
) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
};
|
||||
|
||||
const printDiffOrStringified = (
|
||||
expectedSerializedTrimmed,
|
||||
receivedSerializedTrimmed,
|
||||
received,
|
||||
expectedLabel,
|
||||
receivedLabel,
|
||||
expand
|
||||
) => {
|
||||
if (typeof received === 'string') {
|
||||
if (
|
||||
expectedSerializedTrimmed.length >= 2 &&
|
||||
expectedSerializedTrimmed.startsWith('"') &&
|
||||
expectedSerializedTrimmed.endsWith('"') &&
|
||||
receivedSerializedTrimmed ===
|
||||
(0, _utils.unescape)((0, _prettyFormat.default)(received))
|
||||
) {
|
||||
// The expected snapshot looks like a stringified string.
|
||||
// The received serialization is default stringified string.
|
||||
// Undo default serialization of expected snapshot:
|
||||
// Remove enclosing double quote marks.
|
||||
// Remove backslash escape preceding backslash here,
|
||||
// because unescape replaced it only preceding double quote mark.
|
||||
return (0, _jestMatcherUtils.printDiffOrStringify)(
|
||||
expectedSerializedTrimmed.slice(1, -1).replace(/\\\\/g, '\\'),
|
||||
received,
|
||||
expectedLabel,
|
||||
receivedLabel,
|
||||
expand
|
||||
);
|
||||
} // Display substring highlight even when strings have custom serialization.
|
||||
|
||||
const result = (0, _jestDiff.getStringDiff)(
|
||||
expectedSerializedTrimmed,
|
||||
receivedSerializedTrimmed,
|
||||
{
|
||||
aAnnotation: expectedLabel,
|
||||
bAnnotation: receivedLabel,
|
||||
expand
|
||||
}
|
||||
);
|
||||
|
||||
if (result !== null) {
|
||||
if (result.isMultiline) {
|
||||
return result.annotatedDiff;
|
||||
} // Because not default stringify, call EXPECTED_COLOR and RECEIVED_COLOR
|
||||
// This is reason to call getStringDiff instead of printDiffOrStringify
|
||||
// Because there is no closing double quote mark at end of single lines,
|
||||
// future improvement is to call replaceSpacesAtEnd if it becomes public.
|
||||
|
||||
const printLabel = (0, _jestMatcherUtils.getLabelPrinter)(
|
||||
expectedLabel,
|
||||
receivedLabel
|
||||
);
|
||||
return (
|
||||
printLabel(expectedLabel) +
|
||||
(0, _jestMatcherUtils.EXPECTED_COLOR)(result.a) +
|
||||
'\n' +
|
||||
printLabel(receivedLabel) +
|
||||
(0, _jestMatcherUtils.RECEIVED_COLOR)(result.b)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if (
|
||||
(expectedSerializedTrimmed.includes('\n') ||
|
||||
receivedSerializedTrimmed.includes('\n')) &&
|
||||
isLineDiffable(received)
|
||||
) {
|
||||
return (0, _jestDiff.default)(
|
||||
expectedSerializedTrimmed,
|
||||
receivedSerializedTrimmed,
|
||||
{
|
||||
aAnnotation: expectedLabel,
|
||||
bAnnotation: receivedLabel,
|
||||
expand
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
const printLabel = (0, _jestMatcherUtils.getLabelPrinter)(
|
||||
expectedLabel,
|
||||
receivedLabel
|
||||
);
|
||||
return (
|
||||
printLabel(expectedLabel) +
|
||||
(0, _jestMatcherUtils.EXPECTED_COLOR)(expectedSerializedTrimmed) +
|
||||
'\n' +
|
||||
printLabel(receivedLabel) +
|
||||
(0, _jestMatcherUtils.RECEIVED_COLOR)(receivedSerializedTrimmed)
|
||||
);
|
||||
};
|
||||
|
||||
exports.printDiffOrStringified = printDiffOrStringified;
|
||||
4
node_modules/jest-snapshot/build/snapshot_resolver.js
generated
vendored
4
node_modules/jest-snapshot/build/snapshot_resolver.js
generated
vendored
@@ -110,9 +110,7 @@ function verifyConsistentTransformations(custom) {
|
||||
if (resolvedTestPath !== custom.testPathForConsistencyCheck) {
|
||||
throw new Error(
|
||||
_chalk.default.bold(
|
||||
`Custom snapshot resolver functions must transform paths consistently, i.e. expects resolveTestPath(resolveSnapshotPath('${
|
||||
custom.testPathForConsistencyCheck
|
||||
}')) === ${resolvedTestPath}`
|
||||
`Custom snapshot resolver functions must transform paths consistently, i.e. expects resolveTestPath(resolveSnapshotPath('${custom.testPathForConsistencyCheck}')) === ${resolvedTestPath}`
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
4
node_modules/jest-snapshot/build/types.d.ts
generated
vendored
4
node_modules/jest-snapshot/build/types.d.ts
generated
vendored
@@ -4,7 +4,5 @@
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*/
|
||||
export declare type SnapshotData = {
|
||||
[key: string]: string;
|
||||
};
|
||||
export declare type SnapshotData = Record<string, string>;
|
||||
//# sourceMappingURL=types.d.ts.map
|
||||
2
node_modules/jest-snapshot/build/types.d.ts.map
generated
vendored
2
node_modules/jest-snapshot/build/types.d.ts.map
generated
vendored
@@ -1 +1 @@
|
||||
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,oBAAY,YAAY,GAAG;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,CAAC"}
|
||||
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,oBAAY,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC"}
|
||||
7
node_modules/jest-snapshot/build/utils.d.ts
generated
vendored
7
node_modules/jest-snapshot/build/utils.d.ts
generated
vendored
@@ -5,22 +5,19 @@
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*/
|
||||
import { Config } from '@jest/types';
|
||||
import { SnapshotData } from './types';
|
||||
export declare const SNAPSHOT_VERSION = "1";
|
||||
export declare const SNAPSHOT_GUIDE_LINK = "https://goo.gl/fbAQLP";
|
||||
export declare const SNAPSHOT_VERSION_WARNING: string;
|
||||
export declare const testNameToKey: (testName: string, count: number) => string;
|
||||
export declare const keyToTestName: (key: string) => string;
|
||||
export declare const getSnapshotData: (snapshotPath: string, update: Config.SnapshotUpdateState) => {
|
||||
data: SnapshotData;
|
||||
data: Record<string, string>;
|
||||
dirty: boolean;
|
||||
};
|
||||
export declare const serialize: (data: string) => string;
|
||||
export declare const unescape: (data: string) => string;
|
||||
export declare const escapeBacktickString: (str: string) => string;
|
||||
export declare const ensureDirectoryExists: (filePath: string) => void;
|
||||
export declare const saveSnapshotFile: (snapshotData: {
|
||||
[key: string]: string;
|
||||
}, snapshotPath: string) => void;
|
||||
export declare const saveSnapshotFile: (snapshotData: Record<string, string>, snapshotPath: string) => void;
|
||||
export declare const deepMerge: (target: any, source: any) => any;
|
||||
//# sourceMappingURL=utils.d.ts.map
|
||||
2
node_modules/jest-snapshot/build/utils.d.ts.map
generated
vendored
2
node_modules/jest-snapshot/build/utils.d.ts.map
generated
vendored
@@ -1 +1 @@
|
||||
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAGnC,OAAO,EAAC,YAAY,EAAC,MAAM,SAAS,CAAC;AAErC,eAAO,MAAM,gBAAgB,MAAM,CAAC;AAEpC,eAAO,MAAM,mBAAmB,0BAA0B,CAAC;AAC3D,eAAO,MAAM,wBAAwB,QAIpC,CAAC;AAwDF,eAAO,MAAM,aAAa,6CACF,CAAC;AAEzB,eAAO,MAAM,aAAa,yBAMzB,CAAC;AAEF,eAAO,MAAM,eAAe;;;CAgC3B,CAAC;AAOF,eAAO,MAAM,SAAS,0BASnB,CAAC;AAGJ,eAAO,MAAM,QAAQ,0BAAyD,CAAC;AAE/E,eAAO,MAAM,oBAAoB,yBACC,CAAC;AAKnC,eAAO,MAAM,qBAAqB,4BAIjC,CAAC;AAIF,eAAO,MAAM,gBAAgB;;gCAoB5B,CAAC;AAEF,eAAO,MAAM,SAAS,mCAarB,CAAC"}
|
||||
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAKnC,eAAO,MAAM,gBAAgB,MAAM,CAAC;AAEpC,eAAO,MAAM,mBAAmB,0BAA0B,CAAC;AAC3D,eAAO,MAAM,wBAAwB,QAIpC,CAAC;AAwDF,eAAO,MAAM,aAAa,6CACF,CAAC;AAEzB,eAAO,MAAM,aAAa,yBAMzB,CAAC;AAEF,eAAO,MAAM,eAAe;;;CAgC3B,CAAC;AAOF,eAAO,MAAM,SAAS,0BASnB,CAAC;AAGJ,eAAO,MAAM,QAAQ,0BAAyD,CAAC;AAE/E,eAAO,MAAM,oBAAoB,yBACC,CAAC;AAKnC,eAAO,MAAM,qBAAqB,4BAIjC,CAAC;AAIF,eAAO,MAAM,gBAAgB,sEAoB5B,CAAC;AAqBF,eAAO,MAAM,SAAS,mCAerB,CAAC"}
|
||||
19
node_modules/jest-snapshot/build/utils.js
generated
vendored
19
node_modules/jest-snapshot/build/utils.js
generated
vendored
@@ -253,6 +253,23 @@ const saveSnapshotFile = (snapshotData, snapshotPath) => {
|
||||
|
||||
exports.saveSnapshotFile = saveSnapshotFile;
|
||||
|
||||
const deepMergeArray = (target, source) => {
|
||||
const mergedOutput = Array.from(target);
|
||||
source.forEach((sourceElement, index) => {
|
||||
const targetElement = mergedOutput[index];
|
||||
|
||||
if (Array.isArray(target[index])) {
|
||||
mergedOutput[index] = deepMergeArray(target[index], sourceElement);
|
||||
} else if (isObject(targetElement)) {
|
||||
mergedOutput[index] = deepMerge(target[index], sourceElement);
|
||||
} else {
|
||||
// Source does not exist in target or target is primitive and cannot be deep merged
|
||||
mergedOutput[index] = sourceElement;
|
||||
}
|
||||
});
|
||||
return mergedOutput;
|
||||
};
|
||||
|
||||
const deepMerge = (target, source) => {
|
||||
const mergedOutput = _objectSpread({}, target);
|
||||
|
||||
@@ -264,6 +281,8 @@ const deepMerge = (target, source) => {
|
||||
[key]: source[key]
|
||||
});
|
||||
else mergedOutput[key] = deepMerge(target[key], source[key]);
|
||||
} else if (Array.isArray(source[key])) {
|
||||
mergedOutput[key] = deepMergeArray(target[key], source[key]);
|
||||
} else {
|
||||
Object.assign(mergedOutput, {
|
||||
[key]: source[key]
|
||||
|
||||
Reference in New Issue
Block a user