mirror of
https://github.com/pcottle/learnGitBranching.git
synced 2025-06-26 07:58:34 +02:00
Finally fixed async git dispatching and promise chains, fixed rebase level Issue #111
This commit is contained in:
parent
380bcfaa4b
commit
a95a56241b
6 changed files with 25 additions and 24 deletions
|
@ -24,12 +24,6 @@ var compareAnswerExpect = function(headless, expectedJSON) {
|
|||
expect(equal).toBe(true);
|
||||
};
|
||||
|
||||
var expectTree = function(command, expectedJSON) {
|
||||
var headless = new HeadlessGit();
|
||||
headless.sendCommand(command);
|
||||
compareAnswerExpect(headless, expectedJSON);
|
||||
};
|
||||
|
||||
var expectTreeAsync = function(command, expectedJSON) {
|
||||
var headless = new HeadlessGit();
|
||||
runs(function() {
|
||||
|
@ -42,14 +36,14 @@ var expectTreeAsync = function(command, expectedJSON) {
|
|||
|
||||
describe('GitEngine', function() {
|
||||
it('Commits', function() {
|
||||
expectTree(
|
||||
expectTreeAsync(
|
||||
'git commit',
|
||||
'{"branches":{"master":{"target":"C2","id":"master","type":"branch"}},"commits":{"C0":{"type":"commit","parents":[],"id":"C0","rootCommit":true},"C1":{"type":"commit","parents":["C0"],"id":"C1"},"C2":{"type":"commit","parents":["C1"],"id":"C2"}},"HEAD":{"id":"HEAD","target":"master","type":"general ref"}}'
|
||||
);
|
||||
});
|
||||
|
||||
it('Checkouts', function() {
|
||||
expectTree(
|
||||
expectTreeAsync(
|
||||
'git checkout -b side',
|
||||
'{"branches":{"master":{"target":"C1","id":"master"},"side":{"target":"C1","id":"side"}},"commits":{"C0":{"parents":[],"id":"C0","rootCommit":true},"C1":{"parents":["C0"],"id":"C1"}},"HEAD":{"target":"side","id":"HEAD"}}'
|
||||
);
|
||||
|
@ -70,35 +64,35 @@ describe('GitEngine', function() {
|
|||
});
|
||||
|
||||
it('Merges', function() {
|
||||
expectTree(
|
||||
expectTreeAsync(
|
||||
'gc; git checkout -b side C1; gc; git merge master',
|
||||
'{"branches":{"master":{"target":"C2","id":"master"},"side":{"target":"C4","id":"side"}},"commits":{"C0":{"parents":[],"id":"C0","rootCommit":true},"C1":{"parents":["C0"],"id":"C1"},"C2":{"parents":["C1"],"id":"C2"},"C3":{"parents":["C1"],"id":"C3"},"C4":{"parents":["C2","C3"],"id":"C4"}},"HEAD":{"target":"side","id":"HEAD"}}'
|
||||
);
|
||||
});
|
||||
|
||||
it('Resets', function() {
|
||||
expectTree(
|
||||
expectTreeAsync(
|
||||
'git commit; git reset HEAD~1',
|
||||
'{"branches":{"master":{"target":"C1","id":"master"}},"commits":{"C0":{"parents":[],"id":"C0","rootCommit":true},"C1":{"parents":["C0"],"id":"C1"},"C2":{"parents":["C1"],"id":"C2"}},"HEAD":{"target":"master","id":"HEAD"}}'
|
||||
);
|
||||
});
|
||||
|
||||
it('Branches', function() {
|
||||
expectTree(
|
||||
expectTreeAsync(
|
||||
'git branch side C0',
|
||||
'{"branches":{"master":{"target":"C1","id":"master"},"side":{"target":"C0","id":"side"}},"commits":{"C0":{"parents":[],"id":"C0","rootCommit":true},"C1":{"parents":["C0"],"id":"C1"}},"HEAD":{"target":"master","id":"HEAD"}}'
|
||||
);
|
||||
});
|
||||
|
||||
it('Deletes branches', function() {
|
||||
expectTree(
|
||||
expectTreeAsync(
|
||||
'git branch side; git branch -d side',
|
||||
'{"branches":{"master":{"target":"C1","id":"master"}},"commits":{"C0":{"parents":[],"id":"C0","rootCommit":true},"C1":{"parents":["C0"],"id":"C1"}},"HEAD":{"target":"master","id":"HEAD"}}'
|
||||
);
|
||||
});
|
||||
|
||||
it('Ammends commits', function() {
|
||||
expectTree(
|
||||
expectTreeAsync(
|
||||
'git commit --amend',
|
||||
'%7B%22branches%22%3A%7B%22master%22%3A%7B%22target%22%3A%22C1%27%22%2C%22id%22%3A%22master%22%7D%7D%2C%22commits%22%3A%7B%22C0%22%3A%7B%22parents%22%3A%5B%5D%2C%22id%22%3A%22C0%22%2C%22rootCommit%22%3Atrue%7D%2C%22C1%22%3A%7B%22parents%22%3A%5B%22C0%22%5D%2C%22id%22%3A%22C1%22%7D%2C%22C1%27%22%3A%7B%22parents%22%3A%5B%22C0%22%5D%2C%22id%22%3A%22C1%27%22%7D%7D%2C%22HEAD%22%3A%7B%22target%22%3A%22master%22%2C%22id%22%3A%22HEAD%22%7D%7D'
|
||||
);
|
||||
|
@ -112,7 +106,7 @@ describe('GitEngine', function() {
|
|||
});
|
||||
|
||||
it('Forces branches', function() {
|
||||
expectTree(
|
||||
expectTreeAsync(
|
||||
'git checkout -b side; git branch -f side C0',
|
||||
'{"branches":{"master":{"target":"C1","id":"master"},"side":{"target":"C0","id":"side"}},"commits":{"C0":{"parents":[],"id":"C0","rootCommit":true},"C1":{"parents":["C0"],"id":"C1"}},"HEAD":{"target":"side","id":"HEAD"}}'
|
||||
);
|
||||
|
@ -125,5 +119,11 @@ describe('GitEngine', function() {
|
|||
);
|
||||
});
|
||||
|
||||
it('checks out after a rebase', function() {
|
||||
expectTreeAsync(
|
||||
'git commit; git checkout -b bugFix C1; git commit; git rebase master;git checkout master',
|
||||
'%7B%22branches%22%3A%7B%22master%22%3A%7B%22target%22%3A%22C2%22%2C%22id%22%3A%22master%22%7D%2C%22bugFix%22%3A%7B%22target%22%3A%22C3%27%22%2C%22id%22%3A%22bugFix%22%7D%7D%2C%22commits%22%3A%7B%22C0%22%3A%7B%22parents%22%3A%5B%5D%2C%22id%22%3A%22C0%22%2C%22rootCommit%22%3Atrue%7D%2C%22C1%22%3A%7B%22parents%22%3A%5B%22C0%22%5D%2C%22id%22%3A%22C1%22%7D%2C%22C2%22%3A%7B%22parents%22%3A%5B%22C1%22%5D%2C%22id%22%3A%22C2%22%7D%2C%22C3%22%3A%7B%22parents%22%3A%5B%22C1%22%5D%2C%22id%22%3A%22C3%22%7D%2C%22C3%27%22%3A%7B%22parents%22%3A%5B%22C2%22%5D%2C%22id%22%3A%22C3%27%22%7D%7D%2C%22HEAD%22%3A%7B%22target%22%3A%22master%22%2C%22id%22%3A%22HEAD%22%7D%7D'
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue