| import { Commit } from '../util'; |
| import { Branch } from '../rpc/status'; |
| import {} from '../rpc-mock/test_data'; |
| |
| const fixedDate = Date.now(); |
| const timestampSinceFixed = (seconds: number = 0) => |
| new Date(fixedDate - 1000 * seconds).toISOString(); |
| const numCommits = 0; |
| function nextTimestamp() { |
| return timestampSinceFixed(10 * numCommits); |
| } |
| const commitTemplate: Commit = { |
| hash: 'abc0', |
| author: 'alice@example.com', |
| parents: ['abc1'], |
| subject: 'current HEAD', |
| body: 'the most recent commit', |
| timestamp: '', |
| shortAuthor: '', |
| shortHash: '', |
| shortSubject: '', |
| issue: '', |
| patchStorage: '', |
| isReland: false, |
| isRevert: false, |
| ignoreFailure: false, |
| }; |
| |
| function commit(curr: number, parent: number) { |
| return { ...commitTemplate, hash: `abc${curr}`, parents: [`abc${parent}`] }; |
| } |
| |
| export const singleBranchData: [Array<Branch>, Array<Commit>] = [ |
| [{ name: 'main', head: 'abc0' }], |
| (() => { |
| const ret: Array<Commit> = []; |
| for (let i = 0; i < 20; ++i) { |
| ret.push(commit(i, i + 1)); |
| } |
| return ret; |
| })(), |
| ]; |
| |
| export const doubleBranchData: [Array<Branch>, Array<Commit>] = [ |
| [ |
| { name: 'main', head: 'abc0' }, |
| { name: 'branch', head: 'abc1' }, |
| ], |
| (() => { |
| const ret: Array<Commit> = []; |
| // Evens are main, odds are the branch. |
| for (let i = 0; i < 30; i += 2) { |
| ret.push(commit(i, i + 2)); |
| if (i < 6) { |
| ret.push(commit(i + 1, i + 3)); |
| } else if (i === 6) { |
| ret.push(commit(i + 1, i + 2)); |
| } |
| } |
| return ret; |
| })(), |
| ]; |
| |
| export const complexBranchData: [Array<Branch>, Array<Commit>] = [ |
| [ |
| { name: 'main', head: 'abc0' }, |
| { name: 'branch1', head: 'abc1' }, |
| { name: 'branch2', head: 'abc22' }, |
| { name: 'branch3', head: 'abc3' }, |
| { name: 'Fizz Rolled', head: 'abc20' }, |
| { name: 'Baz Rolled', head: 'abc20' }, |
| ], |
| (() => { |
| const ret: Array<Commit> = []; |
| // x0 (0, 10, 20, etc) is main branch, x1 is branch1, x2 is branch2, etc. |
| for (let i = 0; i < 100; i += 10) { |
| // The main branch. |
| ret.push(commit(i, i + 10)); |
| // branch1 |
| if (i < 80) { |
| ret.push(commit(i + 1, i + 11)); |
| } else if (i === 80) { |
| ret.push(commit(i + 1, i + 10)); |
| } |
| // branch2 |
| if (i < 60 && i > 10) { |
| ret.push(commit(i + 2, i + 12)); |
| } else if (i === 60) { |
| ret.push(commit(i + 2, i + 10)); |
| } |
| // branch3 |
| ret.push(commit(i + 3, i + 13)); |
| } |
| // Have main branch merge in other branches. |
| ret[0].parents!.push('abc22', 'abc1'); |
| // Have random commit in branch1 pull in branch2. |
| ret[1].parents!.push('abc22'); |
| return ret; |
| })(), |
| ]; |