mirror of
https://github.com/pcottle/learnGitBranching.git
synced 2025-06-27 08:28:50 +02:00
Resolves #1048
This commit is contained in:
parent
5c37007647
commit
3a9f1bc7da
2 changed files with 13 additions and 1 deletions
|
@ -74,6 +74,8 @@ TreeCompare.dispatchShallow = function(levelBlob, goalTreeString, treeToCompare)
|
|||
return TreeCompare.compareBranchesWithinTreesHashAgnostic(
|
||||
treeToCompare, goalTreeString, ['main']
|
||||
) && TreeCompare.evalAsserts(treeToCompare, levelBlob.goalAsserts);
|
||||
case !!levelBlob.onlyEvaluateAsserts:
|
||||
return TreeCompare.evalAsserts(treeToCompare, levelBlob.goalAsserts);
|
||||
default:
|
||||
return TreeCompare.compareAllBranchesWithinTreesAndHEAD(
|
||||
treeToCompare, goalTreeString
|
||||
|
@ -233,11 +235,14 @@ TreeCompare.evalAssertsOnBranch = function(tree, branchName, asserts) {
|
|||
var branch = tree.branches[branchName];
|
||||
var queue = [branch.target];
|
||||
var data = {};
|
||||
var numCommits = 0;
|
||||
while (queue.length) {
|
||||
var commitRef = queue.pop();
|
||||
data[this.getBaseRef(commitRef)] = this.getNumHashes(commitRef);
|
||||
queue = queue.concat(tree.commits[commitRef].parents);
|
||||
numCommits++;
|
||||
}
|
||||
data['__num_commits_upstream'] = numCommits;
|
||||
|
||||
var result = true;
|
||||
asserts.forEach(function(assert) {
|
||||
|
@ -245,7 +250,6 @@ TreeCompare.evalAssertsOnBranch = function(tree, branchName, asserts) {
|
|||
result = result && assert(data);
|
||||
} catch (err) {
|
||||
console.warn('error during assert', err);
|
||||
console.log(err);
|
||||
result = false;
|
||||
}
|
||||
});
|
||||
|
|
|
@ -2,6 +2,14 @@ exports.level = {
|
|||
"goalTreeString": "{\"branches\":{\"main\":{\"target\":\"C2\",\"id\":\"main\",\"remoteTrackingBranchID\":null},\"side\":{\"target\":\"C4\",\"id\":\"side\",\"remoteTrackingBranchID\":null},\"bugFix\":{\"target\":\"C7\",\"id\":\"bugFix\",\"remoteTrackingBranchID\":null}},\"commits\":{\"C0\":{\"parents\":[],\"id\":\"C0\",\"rootCommit\":true},\"C1\":{\"parents\":[\"C0\"],\"id\":\"C1\"},\"C2\":{\"parents\":[\"C1\"],\"id\":\"C2\"},\"C3\":{\"parents\":[\"C1\"],\"id\":\"C3\"},\"C4\":{\"parents\":[\"C3\"],\"id\":\"C4\"},\"C5\":{\"parents\":[\"C3\"],\"id\":\"C5\"},\"C6\":{\"parents\":[\"C5\"],\"id\":\"C6\"},\"C7\":{\"parents\":[\"C6\"],\"id\":\"C7\"}},\"tags\":{\"v0\":{\"target\":\"C0\",\"id\":\"v0\",\"type\":\"tag\"},\"v1\":{\"target\":\"C3\",\"id\":\"v1\",\"type\":\"tag\"}},\"HEAD\":{\"target\":\"bugFix\",\"id\":\"HEAD\"}}",
|
||||
"solutionCommand": "git commit ",
|
||||
"startTree": "{\"branches\":{\"main\":{\"target\":\"C2\",\"id\":\"main\",\"remoteTrackingBranchID\":null},\"side\":{\"target\":\"C4\",\"id\":\"side\",\"remoteTrackingBranchID\":null},\"bugFix\":{\"target\":\"C6\",\"id\":\"bugFix\",\"remoteTrackingBranchID\":null}},\"commits\":{\"C0\":{\"parents\":[],\"id\":\"C0\",\"rootCommit\":true},\"C1\":{\"parents\":[\"C0\"],\"id\":\"C1\"},\"C2\":{\"parents\":[\"C1\"],\"id\":\"C2\"},\"C3\":{\"parents\":[\"C1\"],\"id\":\"C3\"},\"C4\":{\"parents\":[\"C3\"],\"id\":\"C4\"},\"C5\":{\"parents\":[\"C3\"],\"id\":\"C5\"},\"C6\":{\"parents\":[\"C5\"],\"id\":\"C6\"}},\"tags\":{\"v0\":{\"target\":\"C0\",\"id\":\"v0\",\"type\":\"tag\"},\"v1\":{\"target\":\"C3\",\"id\":\"v1\",\"type\":\"tag\"}},\"HEAD\":{\"target\":\"bugFix\",\"id\":\"HEAD\"}}",
|
||||
"onlyEvaluateAsserts": true,
|
||||
"goalAsserts": {
|
||||
"bugfix": [
|
||||
function (data) {
|
||||
return data.__num_commits_upstream > 5;
|
||||
},
|
||||
]
|
||||
},
|
||||
"name": {
|
||||
"en_US": "Git Describe",
|
||||
"fr_FR": "Git describe",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue