@@ -1475,6 +1475,42 @@ describe('cli', function () {
1475
1475
expect ( gitArgs ) . toHaveLength ( 0 ) ;
1476
1476
} ) ;
1477
1477
1478
+ it ( '--signedoff adds signed-off-by to the commit message' , async function ( ) {
1479
+ const gitArgs = [
1480
+ [ 'add' , 'CHANGELOG.md' , 'package.json' , 'package-lock.json' ] ,
1481
+ [
1482
+ 'commit' ,
1483
+ '--signoff' ,
1484
+ 'CHANGELOG.md' ,
1485
+ 'package.json' ,
1486
+ 'package-lock.json' ,
1487
+ '-m' ,
1488
+ 'chore(release): 1.0.1' ,
1489
+ ] ,
1490
+ [ 'tag' , '-a' , 'v1.0.1' , '-m' , 'chore(release): 1.0.1' ] ,
1491
+ [ 'rev-parse' , '--abbrev-ref' , 'HEAD' ] ,
1492
+ ] ;
1493
+
1494
+ runExecFile . mockImplementation ( ( _args , cmd , cmdArgs ) => {
1495
+ expect ( cmd ) . toEqual ( 'git' ) ;
1496
+
1497
+ const expected = gitArgs . shift ( ) ;
1498
+ expect ( cmdArgs ) . toEqual ( expected ) ;
1499
+
1500
+ if ( expected [ 0 ] === 'rev-parse' ) return Promise . resolve ( 'master' ) ;
1501
+
1502
+ return Promise . resolve ( '' ) ;
1503
+ } ) ;
1504
+
1505
+ mock ( {
1506
+ bump : 'patch' ,
1507
+ changelog : 'foo\n' ,
1508
+ } ) ;
1509
+
1510
+ await exec ( '--signoff' , true ) ;
1511
+ expect ( gitArgs ) . toHaveLength ( 0 ) ;
1512
+ } ) ;
1513
+
1478
1514
it ( '--tag-force forces tag replacement' , async function ( ) {
1479
1515
const gitArgs = [
1480
1516
[ 'add' , 'CHANGELOG.md' , 'package.json' , 'package-lock.json' ] ,
0 commit comments