Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function assert(a,b){
- if (a !== b){
- throw "Assertion fail! " + a + " != " + b;
- }
- }
- function getLastRevision(revs, branch){
- var ind = branch.lastIndexOf(".");
- var base = branch.slice(0, ind-1) + branch.slice(ind+1);
- function getTail(rev){
- if(rev.indexOf(base) === 0){
- return parseInt(rev.slice(base.length + 1), 10);
- }
- }
- var max = Number.MIN_VALUE;
- for (var i=0; i < revs.length; i++){
- var tail = getTail(revs[i]);
- if(tail && tail > max){
- max = tail;
- }
- }
- return base + "." + max;
- }
- revs = ["1.18", "1.19","1.20","1.21","2.50",
- "1.18.2.1", "1.18.2.2","1.18.2.3","1.18.2.6", "1.19.2.6",
- "1.18.2.1.3.1", "1.18.2.1.3.2","1.18.2.1.3.3","1.18.2.1.3.61","1.18.3.1.3.6"]
- assert(getLastRevision(revs, "1.18.0.2"), "1.18.2.6")
- assert(getLastRevision(revs, "1.18.2.1.0.3"), "1.18.2.1.3.61")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement