@ibgib/vcs-gib 0.0.18 → 0.0.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AUTO-GENERATED-version.d.mts +1 -1
- package/dist/AUTO-GENERATED-version.mjs +1 -1
- package/dist/bootstrap/node-bootstrap.d.mts.map +1 -1
- package/dist/bootstrap/node-bootstrap.mjs +2 -2
- package/dist/bootstrap/node-bootstrap.mjs.map +1 -1
- package/dist/cli/commands/branch-cmd.d.mts.map +1 -1
- package/dist/cli/commands/branch-cmd.mjs.map +1 -1
- package/dist/cli/commands/merge-cmd.d.mts.map +1 -1
- package/dist/cli/commands/merge-cmd.mjs +1 -1
- package/dist/cli/commands/merge-cmd.mjs.map +1 -1
- package/dist/engine/item/item-helper.d.mts +1 -0
- package/dist/engine/item/item-helper.d.mts.map +1 -1
- package/dist/engine/item/item-helper.mjs +13 -3
- package/dist/engine/item/item-helper.mjs.map +1 -1
- package/dist/engine/item/item-types.d.mts +1 -0
- package/dist/engine/item/item-types.d.mts.map +1 -1
- package/dist/engine/merge/b2tfs-3way-merge-strategy.d.mts +12 -2
- package/dist/engine/merge/b2tfs-3way-merge-strategy.d.mts.map +1 -1
- package/dist/engine/merge/b2tfs-3way-merge-strategy.mjs +384 -236
- package/dist/engine/merge/b2tfs-3way-merge-strategy.mjs.map +1 -1
- package/dist/engine/merge/b2tfs-3way-merge-types.d.mts +41 -0
- package/dist/engine/merge/b2tfs-3way-merge-types.d.mts.map +1 -0
- package/dist/engine/merge/b2tfs-3way-merge-types.mjs +2 -0
- package/dist/engine/merge/b2tfs-3way-merge-types.mjs.map +1 -0
- package/package.json +5 -5
- package/src/AUTO-GENERATED-version.mts +1 -1
- package/src/bootstrap/node-bootstrap.mts +4 -3
- package/src/cli/commands/branch-checkout-cmd.respec.log +111 -0
- package/src/cli/commands/branch-cmd.mts +2 -4
- package/src/cli/commands/merge-cmd.mts +2 -6
- package/src/engine/item/item-helper.mts +15 -9
- package/src/engine/item/item-types.mts +2 -1
- package/src/engine/merge/b2tfs-3way-merge-strategy.mts +388 -261
- package/src/engine/merge/b2tfs-3way-merge-strategy.respec.log +39 -0
- package/src/engine/merge/{b2tfs-merge-strategy.respec.mts → b2tfs-3way-merge-strategy.respec.mts} +16 -13
- package/src/engine/merge/b2tfs-3way-merge-types.mts +42 -0
- package/tsconfig.json +3 -2
- package/tsconfig.test.json +10 -0
- package/tsconfig.test.tsbuildinfo +1 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/dist/assumptions.respec.d.mts +0 -2
- package/dist/assumptions.respec.d.mts.map +0 -1
- package/dist/assumptions.respec.mjs +0 -41
- package/dist/assumptions.respec.mjs.map +0 -1
- package/dist/bootstrap/node-bootstrap.respec.d.mts +0 -7
- package/dist/bootstrap/node-bootstrap.respec.d.mts.map +0 -1
- package/dist/bootstrap/node-bootstrap.respec.mjs +0 -28
- package/dist/bootstrap/node-bootstrap.respec.mjs.map +0 -1
- package/dist/cli/cli-arg-parser.respec.d.mts +0 -7
- package/dist/cli/cli-arg-parser.respec.d.mts.map +0 -1
- package/dist/cli/cli-arg-parser.respec.mjs +0 -35
- package/dist/cli/cli-arg-parser.respec.mjs.map +0 -1
- package/dist/cli/cli-e2e.respec.d.mts +0 -8
- package/dist/cli/cli-e2e.respec.d.mts.map +0 -1
- package/dist/cli/cli-e2e.respec.mjs +0 -263
- package/dist/cli/cli-e2e.respec.mjs.map +0 -1
- package/dist/cli/commands/branch-checkout-cmd.respec.d.mts +0 -7
- package/dist/cli/commands/branch-checkout-cmd.respec.d.mts.map +0 -1
- package/dist/cli/commands/branch-checkout-cmd.respec.mjs +0 -452
- package/dist/cli/commands/branch-checkout-cmd.respec.mjs.map +0 -1
- package/dist/cli/commands/commit-log-cmd.respec.d.mts +0 -7
- package/dist/cli/commands/commit-log-cmd.respec.d.mts.map +0 -1
- package/dist/cli/commands/commit-log-cmd.respec.mjs +0 -251
- package/dist/cli/commands/commit-log-cmd.respec.mjs.map +0 -1
- package/dist/cli/commands/init-cmd.respec.d.mts +0 -7
- package/dist/cli/commands/init-cmd.respec.d.mts.map +0 -1
- package/dist/cli/commands/init-cmd.respec.mjs +0 -40
- package/dist/cli/commands/init-cmd.respec.mjs.map +0 -1
- package/dist/cli/commands/reset-restore-cmd.respec.d.mts +0 -7
- package/dist/cli/commands/reset-restore-cmd.respec.d.mts.map +0 -1
- package/dist/cli/commands/reset-restore-cmd.respec.mjs +0 -185
- package/dist/cli/commands/reset-restore-cmd.respec.mjs.map +0 -1
- package/dist/cli/commands/status-add-cmd.respec.d.mts +0 -7
- package/dist/cli/commands/status-add-cmd.respec.d.mts.map +0 -1
- package/dist/cli/commands/status-add-cmd.respec.mjs +0 -239
- package/dist/cli/commands/status-add-cmd.respec.mjs.map +0 -1
- package/dist/engine/branch/branch-space.respec.d.mts +0 -8
- package/dist/engine/branch/branch-space.respec.d.mts.map +0 -1
- package/dist/engine/branch/branch-space.respec.mjs +0 -143
- package/dist/engine/branch/branch-space.respec.mjs.map +0 -1
- package/dist/engine/diff/line-diff-helper.respec.d.mts +0 -7
- package/dist/engine/diff/line-diff-helper.respec.d.mts.map +0 -1
- package/dist/engine/diff/line-diff-helper.respec.mjs +0 -66
- package/dist/engine/diff/line-diff-helper.respec.mjs.map +0 -1
- package/dist/engine/filter/glob-helper.respec.d.mts +0 -7
- package/dist/engine/filter/glob-helper.respec.d.mts.map +0 -1
- package/dist/engine/filter/glob-helper.respec.mjs +0 -78
- package/dist/engine/filter/glob-helper.respec.mjs.map +0 -1
- package/dist/engine/item/item.respec.d.mts +0 -7
- package/dist/engine/item/item.respec.d.mts.map +0 -1
- package/dist/engine/item/item.respec.mjs +0 -75
- package/dist/engine/item/item.respec.mjs.map +0 -1
- package/dist/engine/merge/b2tfs-merge-strategy.respec.d.mts +0 -7
- package/dist/engine/merge/b2tfs-merge-strategy.respec.d.mts.map +0 -1
- package/dist/engine/merge/b2tfs-merge-strategy.respec.mjs +0 -335
- package/dist/engine/merge/b2tfs-merge-strategy.respec.mjs.map +0 -1
- package/dist/vcs-gib.respec.d.mts +0 -8
- package/dist/vcs-gib.respec.d.mts.map +0 -1
- package/dist/vcs-gib.respec.mjs +0 -82
- package/dist/vcs-gib.respec.mjs.map +0 -1
|
@@ -1,452 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @module branch-checkout-cmd.respec
|
|
3
|
-
*
|
|
4
|
-
* Unit tests for `vcs branch` and `vcs checkout` command handlers & worktree projections.
|
|
5
|
-
*/
|
|
6
|
-
import path from 'node:path';
|
|
7
|
-
import fs from 'node:fs/promises';
|
|
8
|
-
import { respecfully, iReckon, ifWeMight } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
|
|
9
|
-
import { executeInitCmd } from './init-cmd.mjs';
|
|
10
|
-
import { executeAddCmd } from './add-cmd.mjs';
|
|
11
|
-
import { executeCommitCmd } from './commit-cmd.mjs';
|
|
12
|
-
import { executeBranchCmd } from './branch-cmd.mjs';
|
|
13
|
-
import { executeCheckoutCmd } from './checkout-cmd.mjs';
|
|
14
|
-
import { executeMergeCmd } from './merge-cmd.mjs';
|
|
15
|
-
import { executeStatusCmd } from './status-cmd.mjs';
|
|
16
|
-
const lc = `[apps/vcs-gib/src/cli/commands/branch-checkout-cmd.respec.node.mts]`;
|
|
17
|
-
await respecfully(lc, `vcs branch, checkout, and merge Command Handlers`, async () => {
|
|
18
|
-
await ifWeMight(lc, `lists default branch main for new repository`, async () => {
|
|
19
|
-
const testDir = path.join(process.cwd(), '.test_branch_checkout_1');
|
|
20
|
-
const vcsFolderName = '.vcsgib_test_bc_1';
|
|
21
|
-
try {
|
|
22
|
-
await executeInitCmd({
|
|
23
|
-
targetDir: testDir,
|
|
24
|
-
vcsFolderName,
|
|
25
|
-
quiet: true,
|
|
26
|
-
});
|
|
27
|
-
const branchRes = await executeBranchCmd({
|
|
28
|
-
targetDir: testDir,
|
|
29
|
-
vcsFolderName,
|
|
30
|
-
quiet: true,
|
|
31
|
-
});
|
|
32
|
-
iReckon(lc, branchRes.branches.length).willEqual(1);
|
|
33
|
-
iReckon(lc, branchRes.branches[0].name).willEqual('main');
|
|
34
|
-
iReckon(lc, branchRes.branches[0].isActive).isGonnaBeTrue();
|
|
35
|
-
}
|
|
36
|
-
finally {
|
|
37
|
-
await fs.rm(testDir, { recursive: true, force: true });
|
|
38
|
-
}
|
|
39
|
-
});
|
|
40
|
-
await ifWeMight(lc, `creates new branch from active branch root item and rejects duplicates`, async () => {
|
|
41
|
-
const testDir = path.join(process.cwd(), '.test_branch_checkout_2');
|
|
42
|
-
const vcsFolderName = '.vcsgib_test_bc_2';
|
|
43
|
-
try {
|
|
44
|
-
await executeInitCmd({
|
|
45
|
-
targetDir: testDir,
|
|
46
|
-
vcsFolderName,
|
|
47
|
-
quiet: true,
|
|
48
|
-
});
|
|
49
|
-
// Create feature branch
|
|
50
|
-
const createRes = await executeBranchCmd({
|
|
51
|
-
branchName: 'feature-auth',
|
|
52
|
-
targetDir: testDir,
|
|
53
|
-
vcsFolderName,
|
|
54
|
-
quiet: true,
|
|
55
|
-
});
|
|
56
|
-
iReckon(lc, createRes.createdBranchName).willEqual('feature-auth');
|
|
57
|
-
iReckon(lc, Boolean(createRes.createdBranchAddr)).isGonnaBeTrue();
|
|
58
|
-
// List branches
|
|
59
|
-
const listRes = await executeBranchCmd({
|
|
60
|
-
targetDir: testDir,
|
|
61
|
-
vcsFolderName,
|
|
62
|
-
quiet: true,
|
|
63
|
-
});
|
|
64
|
-
iReckon(lc, listRes.branches.length).willEqual(2);
|
|
65
|
-
const featureBranch = listRes.branches.find(b => b.name === 'feature-auth');
|
|
66
|
-
iReckon(lc, Boolean(featureBranch)).isGonnaBeTrue();
|
|
67
|
-
iReckon(lc, featureBranch?.isActive).isGonnaBeFalse();
|
|
68
|
-
// Verify dedicated branch space subfolders exist in .vcsgib
|
|
69
|
-
const mainSpaceDir = path.join(testDir, vcsFolderName, 'ibgib', 'b2s_main');
|
|
70
|
-
const featureSpaceDir = path.join(testDir, vcsFolderName, 'ibgib', 'b2s_feature-auth');
|
|
71
|
-
const mainSpaceExists = await fs.stat(mainSpaceDir).then(s => s.isDirectory()).catch(() => fs.stat(path.join(testDir, vcsFolderName, 'b2s_main')).then(s => s.isDirectory()).catch(() => false));
|
|
72
|
-
const featureSpaceExists = await fs.stat(featureSpaceDir).then(s => s.isDirectory()).catch(() => fs.stat(path.join(testDir, vcsFolderName, 'b2s_feature-auth')).then(s => s.isDirectory()).catch(() => false));
|
|
73
|
-
iReckon(lc, mainSpaceExists).isGonnaBeTrue();
|
|
74
|
-
iReckon(lc, featureSpaceExists).isGonnaBeTrue();
|
|
75
|
-
// Duplicate branch attempt
|
|
76
|
-
let errorThrown = false;
|
|
77
|
-
try {
|
|
78
|
-
await executeBranchCmd({
|
|
79
|
-
branchName: 'feature-auth',
|
|
80
|
-
targetDir: testDir,
|
|
81
|
-
vcsFolderName,
|
|
82
|
-
quiet: true,
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
catch (err) {
|
|
86
|
-
errorThrown = true;
|
|
87
|
-
iReckon(lc, err.message).includes("already exists");
|
|
88
|
-
}
|
|
89
|
-
iReckon(lc, errorThrown).isGonnaBeTrue();
|
|
90
|
-
}
|
|
91
|
-
finally {
|
|
92
|
-
await fs.rm(testDir, { recursive: true, force: true });
|
|
93
|
-
}
|
|
94
|
-
});
|
|
95
|
-
await ifWeMight(lc, `switches active branch with checkout and projects branch snapshot onto worktree subfolder`, async () => {
|
|
96
|
-
const testDir = path.join(process.cwd(), '.test_branch_checkout_3');
|
|
97
|
-
const vcsFolderName = '.vcsgib_test_bc_3';
|
|
98
|
-
try {
|
|
99
|
-
await executeInitCmd({
|
|
100
|
-
targetDir: testDir,
|
|
101
|
-
vcsFolderName,
|
|
102
|
-
quiet: true,
|
|
103
|
-
});
|
|
104
|
-
// Commit a file on main
|
|
105
|
-
await fs.writeFile(path.join(testDir, 'app.ts'), 'console.log("Main");', 'utf8');
|
|
106
|
-
await executeAddCmd({
|
|
107
|
-
paths: ['app.ts'],
|
|
108
|
-
targetDir: testDir,
|
|
109
|
-
vcsFolderName,
|
|
110
|
-
quiet: true,
|
|
111
|
-
});
|
|
112
|
-
await executeCommitCmd({
|
|
113
|
-
message: 'Add app.ts on main',
|
|
114
|
-
targetDir: testDir,
|
|
115
|
-
vcsFolderName,
|
|
116
|
-
quiet: true,
|
|
117
|
-
});
|
|
118
|
-
// Create branch feature-ui
|
|
119
|
-
await executeBranchCmd({
|
|
120
|
-
branchName: 'feature-ui',
|
|
121
|
-
targetDir: testDir,
|
|
122
|
-
vcsFolderName,
|
|
123
|
-
quiet: true,
|
|
124
|
-
});
|
|
125
|
-
// Checkout feature-ui
|
|
126
|
-
const checkoutRes = await executeCheckoutCmd({
|
|
127
|
-
branchName: 'feature-ui',
|
|
128
|
-
targetDir: testDir,
|
|
129
|
-
vcsFolderName,
|
|
130
|
-
quiet: true,
|
|
131
|
-
});
|
|
132
|
-
iReckon(lc, checkoutRes.previousBranch).willEqual('main');
|
|
133
|
-
iReckon(lc, checkoutRes.currentBranch).willEqual('feature-ui');
|
|
134
|
-
const expectedWorktree = path.join(testDir, 'b', 'feature-ui');
|
|
135
|
-
iReckon(lc, checkoutRes.worktreePath).willEqual(expectedWorktree);
|
|
136
|
-
// Verify project file exists in worktree path
|
|
137
|
-
const projectedFile = path.join(expectedWorktree, 'app.ts');
|
|
138
|
-
const fileContent = await fs.readFile(projectedFile, 'utf8');
|
|
139
|
-
iReckon(lc, fileContent).willEqual('console.log("Main");');
|
|
140
|
-
// Verify active branch in status
|
|
141
|
-
const statusRes = await executeStatusCmd({
|
|
142
|
-
targetDir: testDir,
|
|
143
|
-
vcsFolderName,
|
|
144
|
-
quiet: true,
|
|
145
|
-
});
|
|
146
|
-
iReckon(lc, statusRes.branchName).willEqual('feature-ui');
|
|
147
|
-
// Verify branch list displays ALL branches while on feature-ui
|
|
148
|
-
const branchListOnFeature = await executeBranchCmd({
|
|
149
|
-
targetDir: testDir,
|
|
150
|
-
vcsFolderName,
|
|
151
|
-
quiet: true,
|
|
152
|
-
});
|
|
153
|
-
iReckon(lc, branchListOnFeature.branches.length).willEqual(2);
|
|
154
|
-
iReckon(lc, branchListOnFeature.branches.map(b => b.name)).includes('main');
|
|
155
|
-
iReckon(lc, branchListOnFeature.branches.map(b => b.name)).includes('feature-ui');
|
|
156
|
-
// Make a commit on feature-ui branch
|
|
157
|
-
await fs.writeFile(path.join(expectedWorktree, 'ui.ts'), 'export const ui = 1;', 'utf8');
|
|
158
|
-
await executeAddCmd({
|
|
159
|
-
paths: ['ui.ts'],
|
|
160
|
-
targetDir: expectedWorktree,
|
|
161
|
-
vcsFolderName,
|
|
162
|
-
quiet: true,
|
|
163
|
-
});
|
|
164
|
-
await executeCommitCmd({
|
|
165
|
-
message: 'Add ui.ts on feature-ui',
|
|
166
|
-
targetDir: expectedWorktree,
|
|
167
|
-
vcsFolderName,
|
|
168
|
-
quiet: true,
|
|
169
|
-
});
|
|
170
|
-
// Verify branch list after commit on feature-ui still displays ALL branches
|
|
171
|
-
const branchListAfterCommit = await executeBranchCmd({
|
|
172
|
-
targetDir: expectedWorktree,
|
|
173
|
-
vcsFolderName,
|
|
174
|
-
quiet: true,
|
|
175
|
-
});
|
|
176
|
-
iReckon(lc, branchListAfterCommit.branches.length).willEqual(2);
|
|
177
|
-
// Switch back to main
|
|
178
|
-
const switchBackRes = await executeCheckoutCmd({
|
|
179
|
-
branchName: 'main',
|
|
180
|
-
targetDir: expectedWorktree,
|
|
181
|
-
vcsFolderName,
|
|
182
|
-
quiet: true,
|
|
183
|
-
});
|
|
184
|
-
iReckon(lc, switchBackRes.currentBranch).willEqual('main');
|
|
185
|
-
iReckon(lc, switchBackRes.worktreePath).willEqual(testDir);
|
|
186
|
-
// Verify branch list displays ALL branches while on main after feature-ui commit
|
|
187
|
-
const branchListOnMain = await executeBranchCmd({
|
|
188
|
-
targetDir: testDir,
|
|
189
|
-
vcsFolderName,
|
|
190
|
-
quiet: true,
|
|
191
|
-
});
|
|
192
|
-
iReckon(lc, branchListOnMain.branches.length).willEqual(2);
|
|
193
|
-
iReckon(lc, branchListOnMain.branches.map(b => b.name)).includes('main');
|
|
194
|
-
iReckon(lc, branchListOnMain.branches.map(b => b.name)).includes('feature-ui');
|
|
195
|
-
// Switch back to feature-ui seamlessly
|
|
196
|
-
const switchAgainRes = await executeCheckoutCmd({
|
|
197
|
-
branchName: 'feature-ui',
|
|
198
|
-
targetDir: testDir,
|
|
199
|
-
vcsFolderName,
|
|
200
|
-
quiet: true,
|
|
201
|
-
});
|
|
202
|
-
iReckon(lc, switchAgainRes.currentBranch).willEqual('feature-ui');
|
|
203
|
-
}
|
|
204
|
-
finally {
|
|
205
|
-
await fs.rm(testDir, { recursive: true, force: true });
|
|
206
|
-
}
|
|
207
|
-
});
|
|
208
|
-
await ifWeMight(lc, `rejects checkout when branch does not exist or branchName missing`, async () => {
|
|
209
|
-
const testDir = path.join(process.cwd(), '.test_branch_checkout_4');
|
|
210
|
-
const vcsFolderName = '.vcsgib_test_bc_4';
|
|
211
|
-
try {
|
|
212
|
-
await executeInitCmd({
|
|
213
|
-
targetDir: testDir,
|
|
214
|
-
vcsFolderName,
|
|
215
|
-
quiet: true,
|
|
216
|
-
});
|
|
217
|
-
let err1 = false;
|
|
218
|
-
try {
|
|
219
|
-
await executeCheckoutCmd({
|
|
220
|
-
branchName: '',
|
|
221
|
-
targetDir: testDir,
|
|
222
|
-
vcsFolderName,
|
|
223
|
-
quiet: true,
|
|
224
|
-
});
|
|
225
|
-
}
|
|
226
|
-
catch (err) {
|
|
227
|
-
err1 = true;
|
|
228
|
-
iReckon(lc, err.message).includes('Branch name is required');
|
|
229
|
-
}
|
|
230
|
-
iReckon(lc, err1).isGonnaBeTrue();
|
|
231
|
-
let err2 = false;
|
|
232
|
-
try {
|
|
233
|
-
await executeCheckoutCmd({
|
|
234
|
-
branchName: 'non-existent-branch',
|
|
235
|
-
targetDir: testDir,
|
|
236
|
-
vcsFolderName,
|
|
237
|
-
quiet: true,
|
|
238
|
-
});
|
|
239
|
-
}
|
|
240
|
-
catch (err) {
|
|
241
|
-
err2 = true;
|
|
242
|
-
iReckon(lc, err.message).includes("does not exist");
|
|
243
|
-
}
|
|
244
|
-
iReckon(lc, err2).isGonnaBeTrue();
|
|
245
|
-
}
|
|
246
|
-
finally {
|
|
247
|
-
await fs.rm(testDir, { recursive: true, force: true });
|
|
248
|
-
}
|
|
249
|
-
});
|
|
250
|
-
await ifWeMight(lc, `lists branches silently on secondary branch without error noise`, async () => {
|
|
251
|
-
const testDir = path.join(process.cwd(), '.test_branch_checkout_secondary');
|
|
252
|
-
const vcsFolderName = '.vcsgib_test_bc_sec';
|
|
253
|
-
try {
|
|
254
|
-
await executeInitCmd({
|
|
255
|
-
targetDir: testDir,
|
|
256
|
-
vcsFolderName,
|
|
257
|
-
quiet: true,
|
|
258
|
-
});
|
|
259
|
-
// Create and checkout secondary branch feature-math
|
|
260
|
-
await executeBranchCmd({
|
|
261
|
-
branchName: 'feature-math',
|
|
262
|
-
targetDir: testDir,
|
|
263
|
-
vcsFolderName,
|
|
264
|
-
quiet: true,
|
|
265
|
-
});
|
|
266
|
-
await executeCheckoutCmd({
|
|
267
|
-
branchName: 'feature-math',
|
|
268
|
-
targetDir: testDir,
|
|
269
|
-
vcsFolderName,
|
|
270
|
-
quiet: true,
|
|
271
|
-
});
|
|
272
|
-
// Run branch list while on secondary branch
|
|
273
|
-
const listRes = await executeBranchCmd({
|
|
274
|
-
targetDir: testDir,
|
|
275
|
-
vcsFolderName,
|
|
276
|
-
quiet: true,
|
|
277
|
-
});
|
|
278
|
-
iReckon(lc, listRes.branches.length).willEqual(2);
|
|
279
|
-
const mathBranch = listRes.branches.find(b => b.name === 'feature-math');
|
|
280
|
-
const mainBranch = listRes.branches.find(b => b.name === 'main');
|
|
281
|
-
iReckon(lc, mathBranch?.isActive).isGonnaBeTrue();
|
|
282
|
-
iReckon(lc, mainBranch?.isActive).isGonnaBeFalse();
|
|
283
|
-
}
|
|
284
|
-
finally {
|
|
285
|
-
await fs.rm(testDir, { recursive: true, force: true });
|
|
286
|
-
}
|
|
287
|
-
});
|
|
288
|
-
await ifWeMight(lc, `branches single file-root item and projects into file-branch worktree on checkout`, async () => {
|
|
289
|
-
const testDir = path.join(process.cwd(), '.test_branch_checkout_file_root');
|
|
290
|
-
const vcsFolderName = '.vcsgib_test_bc_file';
|
|
291
|
-
try {
|
|
292
|
-
await executeInitCmd({
|
|
293
|
-
targetDir: testDir,
|
|
294
|
-
vcsFolderName,
|
|
295
|
-
quiet: true,
|
|
296
|
-
});
|
|
297
|
-
// Create nested file structure src/utils/math.js and commit on main
|
|
298
|
-
const mathRelPath = 'src/utils/math.js';
|
|
299
|
-
await fs.mkdir(path.join(testDir, 'src', 'utils'), { recursive: true });
|
|
300
|
-
await fs.writeFile(path.join(testDir, mathRelPath), 'export function add(a, b) { return a + b; }', 'utf8');
|
|
301
|
-
await executeAddCmd({
|
|
302
|
-
paths: [mathRelPath],
|
|
303
|
-
targetDir: testDir,
|
|
304
|
-
vcsFolderName,
|
|
305
|
-
quiet: true,
|
|
306
|
-
});
|
|
307
|
-
await executeCommitCmd({
|
|
308
|
-
message: 'Add math.js',
|
|
309
|
-
targetDir: testDir,
|
|
310
|
-
vcsFolderName,
|
|
311
|
-
quiet: true,
|
|
312
|
-
});
|
|
313
|
-
// Execute branch command for single file math-opt targeting src/utils/math.js
|
|
314
|
-
const branchRes = await executeBranchCmd({
|
|
315
|
-
branchName: 'math-opt',
|
|
316
|
-
itemPath: mathRelPath,
|
|
317
|
-
targetDir: testDir,
|
|
318
|
-
vcsFolderName,
|
|
319
|
-
quiet: true,
|
|
320
|
-
});
|
|
321
|
-
iReckon(lc, branchRes.createdBranchName).willEqual('math-opt');
|
|
322
|
-
// Attempt branching uncommitted/non-existent item
|
|
323
|
-
let uncommittedErr = false;
|
|
324
|
-
try {
|
|
325
|
-
await executeBranchCmd({
|
|
326
|
-
branchName: 'invalid-file-branch',
|
|
327
|
-
itemPath: 'src/utils/non-existent.js',
|
|
328
|
-
targetDir: testDir,
|
|
329
|
-
vcsFolderName,
|
|
330
|
-
quiet: true,
|
|
331
|
-
});
|
|
332
|
-
}
|
|
333
|
-
catch (err) {
|
|
334
|
-
uncommittedErr = true;
|
|
335
|
-
iReckon(lc, err.message).includes("not found in active branch snapshot");
|
|
336
|
-
}
|
|
337
|
-
iReckon(lc, uncommittedErr).isGonnaBeTrue();
|
|
338
|
-
// Execute checkout command for math-opt
|
|
339
|
-
const checkoutRes = await executeCheckoutCmd({
|
|
340
|
-
branchName: 'math-opt',
|
|
341
|
-
targetDir: testDir,
|
|
342
|
-
vcsFolderName,
|
|
343
|
-
quiet: true,
|
|
344
|
-
});
|
|
345
|
-
const expectedWorktree = path.join(testDir, 'b', 'math-opt');
|
|
346
|
-
iReckon(lc, checkoutRes.worktreePath).willEqual(expectedWorktree);
|
|
347
|
-
// Verify single file projected at expectedWorktree/math.js (my-repo/b/math-opt/math.js)
|
|
348
|
-
const projectedFilePath = path.join(expectedWorktree, 'math.js');
|
|
349
|
-
const fileExists = await fs.stat(projectedFilePath).then(s => s.isFile()).catch(() => false);
|
|
350
|
-
iReckon(lc, fileExists).isGonnaBeTrue();
|
|
351
|
-
const fileContent = await fs.readFile(projectedFilePath, 'utf8');
|
|
352
|
-
iReckon(lc, fileContent).willEqual('export function add(a, b) { return a + b; }');
|
|
353
|
-
}
|
|
354
|
-
finally {
|
|
355
|
-
await fs.rm(testDir, { recursive: true, force: true });
|
|
356
|
-
}
|
|
357
|
-
});
|
|
358
|
-
await ifWeMight(lc, `performs vcs merge end-to-end between main and secondary branch`, async () => {
|
|
359
|
-
const testDir = path.join(process.cwd(), '.test_vcs_merge_e2e');
|
|
360
|
-
const vcsFolderName = '.vcsgib_test_merge_e2e';
|
|
361
|
-
try {
|
|
362
|
-
await executeInitCmd({
|
|
363
|
-
targetDir: testDir,
|
|
364
|
-
vcsFolderName,
|
|
365
|
-
quiet: true,
|
|
366
|
-
});
|
|
367
|
-
// 1. Initial commit on main
|
|
368
|
-
const initialContent = "line 1\nline 2\nline 3";
|
|
369
|
-
await fs.writeFile(path.join(testDir, 'app.ts'), initialContent, 'utf8');
|
|
370
|
-
await executeAddCmd({
|
|
371
|
-
paths: [path.join(testDir, 'app.ts')],
|
|
372
|
-
targetDir: testDir,
|
|
373
|
-
vcsFolderName,
|
|
374
|
-
quiet: true,
|
|
375
|
-
});
|
|
376
|
-
await executeCommitCmd({
|
|
377
|
-
message: 'Initial commit on main',
|
|
378
|
-
targetDir: testDir,
|
|
379
|
-
vcsFolderName,
|
|
380
|
-
quiet: true,
|
|
381
|
-
});
|
|
382
|
-
// 2. Create secondary branch feature-merge
|
|
383
|
-
await executeBranchCmd({
|
|
384
|
-
branchName: 'feature-merge',
|
|
385
|
-
targetDir: testDir,
|
|
386
|
-
vcsFolderName,
|
|
387
|
-
quiet: true,
|
|
388
|
-
});
|
|
389
|
-
// 3. Checkout feature-merge branch and make a commit (modify line 3)
|
|
390
|
-
await executeCheckoutCmd({
|
|
391
|
-
branchName: 'feature-merge',
|
|
392
|
-
targetDir: testDir,
|
|
393
|
-
vcsFolderName,
|
|
394
|
-
quiet: true,
|
|
395
|
-
});
|
|
396
|
-
const featureWorktree = path.join(testDir, 'b', 'feature-merge');
|
|
397
|
-
const featureContent = "line 1\nline 2\nline 3 modified by secondary";
|
|
398
|
-
await fs.writeFile(path.join(featureWorktree, 'app.ts'), featureContent, 'utf8');
|
|
399
|
-
await executeAddCmd({
|
|
400
|
-
paths: [path.join(featureWorktree, 'app.ts')],
|
|
401
|
-
targetDir: testDir,
|
|
402
|
-
vcsFolderName,
|
|
403
|
-
quiet: true,
|
|
404
|
-
});
|
|
405
|
-
await executeCommitCmd({
|
|
406
|
-
message: 'Update app.ts on feature-merge',
|
|
407
|
-
targetDir: testDir,
|
|
408
|
-
vcsFolderName,
|
|
409
|
-
quiet: true,
|
|
410
|
-
});
|
|
411
|
-
// 4. Checkout main branch and make a commit (modify line 1)
|
|
412
|
-
await executeCheckoutCmd({
|
|
413
|
-
branchName: 'main',
|
|
414
|
-
targetDir: testDir,
|
|
415
|
-
vcsFolderName,
|
|
416
|
-
quiet: true,
|
|
417
|
-
});
|
|
418
|
-
const mainContent = "line 1 modified by main\nline 2\nline 3";
|
|
419
|
-
await fs.writeFile(path.join(testDir, 'app.ts'), mainContent, 'utf8');
|
|
420
|
-
await executeAddCmd({
|
|
421
|
-
paths: [path.join(testDir, 'app.ts')],
|
|
422
|
-
targetDir: testDir,
|
|
423
|
-
vcsFolderName,
|
|
424
|
-
quiet: true,
|
|
425
|
-
});
|
|
426
|
-
await executeCommitCmd({
|
|
427
|
-
message: 'Update app.ts on main',
|
|
428
|
-
targetDir: testDir,
|
|
429
|
-
vcsFolderName,
|
|
430
|
-
quiet: true,
|
|
431
|
-
});
|
|
432
|
-
// 5. Execute vcs merge feature-merge into main
|
|
433
|
-
const mergeRes = await executeMergeCmd({
|
|
434
|
-
targetBranchName: 'feature-merge',
|
|
435
|
-
targetDir: testDir,
|
|
436
|
-
vcsFolderName,
|
|
437
|
-
quiet: true,
|
|
438
|
-
});
|
|
439
|
-
iReckon(lc, mergeRes.activeBranch).willEqual('main');
|
|
440
|
-
iReckon(lc, mergeRes.targetBranch).willEqual('feature-merge');
|
|
441
|
-
// 6. Verify projected file on physical worktree disk contains merged lines
|
|
442
|
-
const mergedAppTs = await fs.readFile(path.join(testDir, 'app.ts'), 'utf8');
|
|
443
|
-
iReckon(lc, mergedAppTs).includes('line 1 modified by main');
|
|
444
|
-
iReckon(lc, mergedAppTs).includes('line 2');
|
|
445
|
-
iReckon(lc, mergedAppTs).includes('line 3 modified by secondary');
|
|
446
|
-
}
|
|
447
|
-
finally {
|
|
448
|
-
await fs.rm(testDir, { recursive: true, force: true });
|
|
449
|
-
}
|
|
450
|
-
});
|
|
451
|
-
});
|
|
452
|
-
//# sourceMappingURL=branch-checkout-cmd.respec.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"branch-checkout-cmd.respec.mjs","sourceRoot":"","sources":["../../../src/cli/commands/branch-checkout-cmd.respec.mts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"commit-log-cmd.respec.d.mts","sourceRoot":"","sources":["../../../src/cli/commands/commit-log-cmd.respec.mts"],"names":[],"mappings":"AAAA;;;;GAIG"}
|