You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
111 lines
2.2 KiB
111 lines
2.2 KiB
'use strict'; |
|
|
|
Object.defineProperty(exports, '__esModule', { |
|
value: true |
|
}); |
|
exports.default = getSnapshotStatus; |
|
|
|
function _chalk() { |
|
const data = _interopRequireDefault(require('chalk')); |
|
|
|
_chalk = function () { |
|
return data; |
|
}; |
|
|
|
return data; |
|
} |
|
|
|
function _jestUtil() { |
|
const data = require('jest-util'); |
|
|
|
_jestUtil = function () { |
|
return data; |
|
}; |
|
|
|
return data; |
|
} |
|
|
|
function _interopRequireDefault(obj) { |
|
return obj && obj.__esModule ? obj : {default: obj}; |
|
} |
|
|
|
/** |
|
* 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 ARROW = ' \u203A '; |
|
const DOT = ' \u2022 '; |
|
|
|
const FAIL_COLOR = _chalk().default.bold.red; |
|
|
|
const SNAPSHOT_ADDED = _chalk().default.bold.green; |
|
|
|
const SNAPSHOT_UPDATED = _chalk().default.bold.green; |
|
|
|
const SNAPSHOT_OUTDATED = _chalk().default.bold.yellow; |
|
|
|
function getSnapshotStatus(snapshot, afterUpdate) { |
|
const statuses = []; |
|
|
|
if (snapshot.added) { |
|
statuses.push( |
|
SNAPSHOT_ADDED( |
|
ARROW + |
|
(0, _jestUtil().pluralize)('snapshot', snapshot.added) + |
|
' written.' |
|
) |
|
); |
|
} |
|
|
|
if (snapshot.updated) { |
|
statuses.push( |
|
SNAPSHOT_UPDATED( |
|
ARROW + |
|
(0, _jestUtil().pluralize)('snapshot', snapshot.updated) + |
|
' updated.' |
|
) |
|
); |
|
} |
|
|
|
if (snapshot.unmatched) { |
|
statuses.push( |
|
FAIL_COLOR( |
|
ARROW + |
|
(0, _jestUtil().pluralize)('snapshot', snapshot.unmatched) + |
|
' failed.' |
|
) |
|
); |
|
} |
|
|
|
if (snapshot.unchecked) { |
|
if (afterUpdate) { |
|
statuses.push( |
|
SNAPSHOT_UPDATED( |
|
ARROW + |
|
(0, _jestUtil().pluralize)('snapshot', snapshot.unchecked) + |
|
' removed.' |
|
) |
|
); |
|
} else { |
|
statuses.push( |
|
SNAPSHOT_OUTDATED( |
|
ARROW + |
|
(0, _jestUtil().pluralize)('snapshot', snapshot.unchecked) + |
|
' obsolete' |
|
) + '.' |
|
); |
|
} |
|
|
|
snapshot.uncheckedKeys.forEach(key => { |
|
statuses.push(` ${DOT}${key}`); |
|
}); |
|
} |
|
|
|
if (snapshot.fileDeleted) { |
|
statuses.push(SNAPSHOT_UPDATED(ARROW + 'snapshot file removed.')); |
|
} |
|
|
|
return statuses; |
|
}
|
|
|