feat: allow publish
plugins to return false
in order to signify no release was done
This commit is contained in:
parent
2aa65ad668
commit
47484f5eb2
@ -73,7 +73,7 @@ module.exports = {
|
|||||||
transform: (release, step, {nextRelease}) => ({
|
transform: (release, step, {nextRelease}) => ({
|
||||||
...nextRelease,
|
...nextRelease,
|
||||||
...(release || {}),
|
...(release || {}),
|
||||||
...step,
|
...(release === false ? {} : step),
|
||||||
}),
|
}),
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
@ -22,7 +22,7 @@ test('The "generateNotes" plugin output, if defined, must be a string', t => {
|
|||||||
t.true(plugins.generateNotes.outputValidator('string'));
|
t.true(plugins.generateNotes.outputValidator('string'));
|
||||||
});
|
});
|
||||||
|
|
||||||
test('The "publish" plugin output, if defined, must be an object', t => {
|
test('The "publish" plugin output, if defined, must be an object or "false"', t => {
|
||||||
t.false(plugins.publish.outputValidator(1));
|
t.false(plugins.publish.outputValidator(1));
|
||||||
t.false(plugins.publish.outputValidator('string'));
|
t.false(plugins.publish.outputValidator('string'));
|
||||||
|
|
||||||
@ -30,6 +30,7 @@ test('The "publish" plugin output, if defined, must be an object', t => {
|
|||||||
t.true(plugins.publish.outputValidator());
|
t.true(plugins.publish.outputValidator());
|
||||||
t.true(plugins.publish.outputValidator(null));
|
t.true(plugins.publish.outputValidator(null));
|
||||||
t.true(plugins.publish.outputValidator(''));
|
t.true(plugins.publish.outputValidator(''));
|
||||||
|
t.true(plugins.publish.outputValidator(false));
|
||||||
});
|
});
|
||||||
|
|
||||||
test('The "addChannel" plugin output, if defined, must be an object', t => {
|
test('The "addChannel" plugin output, if defined, must be an object', t => {
|
||||||
|
@ -1139,7 +1139,7 @@ test('Allow local releases with "noCi" option', async t => {
|
|||||||
t.is(success.callCount, 1);
|
t.is(success.callCount, 1);
|
||||||
});
|
});
|
||||||
|
|
||||||
test('Accept "undefined" value returned by the "generateNotes" plugins', async t => {
|
test('Accept "undefined" value returned by "generateNotes" and "false" by "publish"', async t => {
|
||||||
// Create a git repository, set the current working directory at the root of the repo
|
// Create a git repository, set the current working directory at the root of the repo
|
||||||
const {cwd, repositoryUrl} = await gitRepo(true);
|
const {cwd, repositoryUrl} = await gitRepo(true);
|
||||||
// Add commits to the master branch
|
// Add commits to the master branch
|
||||||
@ -1170,7 +1170,7 @@ test('Accept "undefined" value returned by the "generateNotes" plugins', async t
|
|||||||
const generateNotes1 = stub().resolves();
|
const generateNotes1 = stub().resolves();
|
||||||
const notes2 = 'Release notes 2';
|
const notes2 = 'Release notes 2';
|
||||||
const generateNotes2 = stub().resolves(notes2);
|
const generateNotes2 = stub().resolves(notes2);
|
||||||
const publish = stub().resolves();
|
const publish = stub().resolves(false);
|
||||||
|
|
||||||
const options = {
|
const options = {
|
||||||
branches: ['master'],
|
branches: ['master'],
|
||||||
|
Loading…
x
Reference in New Issue
Block a user