Merge remote-tracking branch 'aloisklink/fix/broken-cherry-pick-parsing' into enelson/git-cherry-pick-tag

This commit is contained in:
Elliot Nelson
2022-09-18 16:21:53 -04:00
2 changed files with 17 additions and 1 deletions

View File

@@ -611,6 +611,22 @@ describe('when parsing a gitGraph', function () {
]); ]);
}); });
it('should support cherry-picking commits', function () {
const str = `gitGraph
commit id: "ZERO"
branch develop
commit id:"A"
checkout main
cherry-pick id:"A"
`;
parser.parse(str);
const commits = parser.yy.getCommits();
const cherryPickCommitID = Object.keys(commits)[2];
expect(commits[cherryPickCommitID].tag).toBe('cherry-pick:A');
expect(commits[cherryPickCommitID].branch).toBe('main');
});
it('should throw error when try to branch existing branch: main', function () { it('should throw error when try to branch existing branch: main', function () {
const str = `gitGraph const str = `gitGraph
commit commit

View File

@@ -47,7 +47,7 @@ commit(?=\s|$) return 'COMMIT';
branch(?=\s|$) return 'BRANCH'; branch(?=\s|$) return 'BRANCH';
"order:" return 'ORDER'; "order:" return 'ORDER';
merge(?=\s|$) return 'MERGE'; merge(?=\s|$) return 'MERGE';
cherry-pick(?=\s|$) return 'CHERRY_PICK'; cherry\-pick(?=\s|$) return 'CHERRY_PICK';
// "reset" return 'RESET'; // "reset" return 'RESET';
checkout(?=\s|$) return 'CHECKOUT'; checkout(?=\s|$) return 'CHECKOUT';
"LR" return 'DIR'; "LR" return 'DIR';