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.
104 lines
4.0 KiB
JavaScript
104 lines
4.0 KiB
JavaScript
'use strict';
|
|
|
|
Object.defineProperty(exports, '__esModule', {
|
|
value: true
|
|
});
|
|
exports.printReceivedConstructorNameNot = exports.printReceivedConstructorName = exports.printExpectedConstructorNameNot = exports.printExpectedConstructorName = exports.printReceivedArrayContainExpectedItem = exports.printReceivedStringContainExpectedResult = exports.printReceivedStringContainExpectedSubstring = void 0;
|
|
|
|
var _jestMatcherUtils = require('jest-matcher-utils');
|
|
|
|
/**
|
|
* 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.
|
|
*
|
|
*/
|
|
// Format substring but do not enclose in double quote marks.
|
|
// The replacement is compatible with pretty-format package.
|
|
const printSubstring = val => val.replace(/"|\\/g, '\\$&');
|
|
|
|
const printReceivedStringContainExpectedSubstring = (received, start, length) =>
|
|
(0, _jestMatcherUtils.RECEIVED_COLOR)(
|
|
'"' +
|
|
printSubstring(received.slice(0, start)) +
|
|
(0, _jestMatcherUtils.INVERTED_COLOR)(
|
|
printSubstring(received.slice(start, start + length))
|
|
) +
|
|
printSubstring(received.slice(start + length)) +
|
|
'"'
|
|
);
|
|
|
|
exports.printReceivedStringContainExpectedSubstring = printReceivedStringContainExpectedSubstring;
|
|
|
|
const printReceivedStringContainExpectedResult = (received, result) =>
|
|
result === null
|
|
? (0, _jestMatcherUtils.printReceived)(received)
|
|
: printReceivedStringContainExpectedSubstring(
|
|
received,
|
|
result.index,
|
|
result[0].length
|
|
); // The serialized array is compatible with pretty-format package min option.
|
|
// However, items have default stringify depth (instead of depth - 1)
|
|
// so expected item looks consistent by itself and enclosed in the array.
|
|
|
|
exports.printReceivedStringContainExpectedResult = printReceivedStringContainExpectedResult;
|
|
|
|
const printReceivedArrayContainExpectedItem = (received, index) =>
|
|
(0, _jestMatcherUtils.RECEIVED_COLOR)(
|
|
'[' +
|
|
received
|
|
.map((item, i) => {
|
|
const stringified = (0, _jestMatcherUtils.stringify)(item);
|
|
return i === index
|
|
? (0, _jestMatcherUtils.INVERTED_COLOR)(stringified)
|
|
: stringified;
|
|
})
|
|
.join(', ') +
|
|
']'
|
|
);
|
|
|
|
exports.printReceivedArrayContainExpectedItem = printReceivedArrayContainExpectedItem;
|
|
|
|
const printExpectedConstructorName = (label, expected) =>
|
|
printConstructorName(label, expected, false, true) + '\n';
|
|
|
|
exports.printExpectedConstructorName = printExpectedConstructorName;
|
|
|
|
const printExpectedConstructorNameNot = (label, expected) =>
|
|
printConstructorName(label, expected, true, true) + '\n';
|
|
|
|
exports.printExpectedConstructorNameNot = printExpectedConstructorNameNot;
|
|
|
|
const printReceivedConstructorName = (label, received) =>
|
|
printConstructorName(label, received, false, false) + '\n'; // Do not call function if received is equal to expected.
|
|
|
|
exports.printReceivedConstructorName = printReceivedConstructorName;
|
|
|
|
const printReceivedConstructorNameNot = (label, received, expected) =>
|
|
typeof expected.name === 'string' &&
|
|
expected.name.length !== 0 &&
|
|
typeof received.name === 'string' &&
|
|
received.name.length !== 0
|
|
? printConstructorName(label, received, true, false) +
|
|
` ${
|
|
Object.getPrototypeOf(received) === expected
|
|
? 'extends'
|
|
: 'extends … extends'
|
|
} ${(0, _jestMatcherUtils.EXPECTED_COLOR)(expected.name)}` +
|
|
'\n'
|
|
: printConstructorName(label, received, false, false) + '\n';
|
|
|
|
exports.printReceivedConstructorNameNot = printReceivedConstructorNameNot;
|
|
|
|
const printConstructorName = (label, constructor, isNot, isExpected) =>
|
|
typeof constructor.name !== 'string'
|
|
? `${label} name is not a string`
|
|
: constructor.name.length === 0
|
|
? `${label} name is an empty string`
|
|
: `${label}: ${!isNot ? '' : isExpected ? 'not ' : ' '}${
|
|
isExpected
|
|
? (0, _jestMatcherUtils.EXPECTED_COLOR)(constructor.name)
|
|
: (0, _jestMatcherUtils.RECEIVED_COLOR)(constructor.name)
|
|
}`;
|