@theia/scm 1.73.0-next.31 → 1.73.0-next.40
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/lib/browser/scm-amend-component.d.ts +2 -2
- package/lib/browser/scm-amend-component.d.ts.map +1 -1
- package/lib/browser/scm-repositories-widget.spec.js +83 -68
- package/lib/browser/scm-repositories-widget.spec.js.map +1 -1
- package/lib/browser/scm-tree-widget.d.ts +3 -3
- package/lib/browser/scm-tree-widget.d.ts.map +1 -1
- package/package.json +6 -6
- package/src/browser/scm-amend-component.tsx +2 -2
- package/src/browser/scm-repositories-widget.spec.ts +86 -84
- package/src/browser/scm-tree-widget.tsx +3 -3
|
@@ -71,7 +71,7 @@ export declare class ScmAmendComponent extends React.Component<ScmAmendComponent
|
|
|
71
71
|
protected amend: () => Promise<void>;
|
|
72
72
|
protected unamend: () => Promise<void>;
|
|
73
73
|
private resetAndSetMessage;
|
|
74
|
-
render(): JSX.Element;
|
|
74
|
+
render(): React.JSX.Element;
|
|
75
75
|
protected getLastCommit(): Promise<{
|
|
76
76
|
commit: ScmCommit;
|
|
77
77
|
avatar: string;
|
|
@@ -97,7 +97,7 @@ export declare class ScmAmendComponent extends React.Component<ScmAmendComponent
|
|
|
97
97
|
protected renderCommitBeingAmended(commitData: {
|
|
98
98
|
commit: ScmCommit;
|
|
99
99
|
avatar: string;
|
|
100
|
-
}, isOldestAmendCommit: boolean): JSX.Element;
|
|
100
|
+
}, isOldestAmendCommit: boolean): React.JSX.Element;
|
|
101
101
|
protected styleAmendedCommits(): React.CSSProperties;
|
|
102
102
|
protected styleLastCommitMovingUp(transitionState: 'start' | 'transitioning'): React.CSSProperties;
|
|
103
103
|
protected styleLastCommitMovingDown(transitionState: 'start' | 'transitioning'): React.CSSProperties;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scm-amend-component.d.ts","sourceRoot":"","sources":["../../src/browser/scm-amend-component.tsx"],"names":[],"mappings":"AAgBA,OAAO,iDAAiD,CAAC;AAEzD,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAW,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAc,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG5D,MAAM,WAAW,sBAAsB;IACnC,KAAK,EAAE,KAAK,CAAC,aAAa,GAAG,SAAS,CAAC;IACvC,UAAU,EAAE,aAAa,CAAC;IAC1B,eAAe,EAAE,eAAe,CAAC;IACjC,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,aAAa,EAAE,gBAAgB,CAAC;IAChC,cAAc,EAAE,cAAc,CAAC;CAClC;AAED,UAAU,sBAAsB;IAC5B;;;;;;OAMG;IACH,UAAU,EAAE;QACR,KAAK,EAAE,MAAM,CAAA;KAChB,GAAG;QACA,KAAK,EAAE,OAAO,GAAG,eAAe,CAAC;QACjC,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;QACzB,kBAAkB,EAAE;YAAE,MAAM,EAAE,SAAS,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAA;KAC5D,CAAC;IAEF,eAAe,EAAE;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzD,UAAU,EAAE;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;CACjE;AAKD,qBAAa,iBAAkB,SAAQ,KAAK,CAAC,SAAS,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAElG;;;OAGG;IACH,SAAS,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAU;IAEhE,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAK;IACvC,mBAAmB,GAAI,UAAU,cAAc,UAI7C;gBAEU,KAAK,EAAE,sBAAsB;IAiBzC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,uBAA8B;IAEpD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAcxC,oBAAoB,IAAI,IAAI;IAI/B,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;YA0E/B,oBAAoB;YAKpB,iBAAiB;IA0B/B,OAAO,CAAC,aAAa;IAIrB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAMvB;;;;;OAKG;IACH,SAAS,CAAC,KAAK,QAAa,OAAO,CAAC,IAAI,CAAC,CAOvC;IAEF,SAAS,CAAC,OAAO,QAAa,OAAO,CAAC,IAAI,CAAC,CAmBzC;YAEY,kBAAkB;IAQvB,MAAM,IAAI,GAAG,CAAC,OAAO;
|
|
1
|
+
{"version":3,"file":"scm-amend-component.d.ts","sourceRoot":"","sources":["../../src/browser/scm-amend-component.tsx"],"names":[],"mappings":"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"}
|
|
@@ -17,11 +17,15 @@
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
const jsdom_1 = require("@theia/core/lib/browser/test/jsdom");
|
|
19
19
|
let disableJSDOM = (0, jsdom_1.enableJSDOM)();
|
|
20
|
+
let disableReactActEnvironment = (0, jsdom_1.enableReactActEnvironment)();
|
|
20
21
|
const chai_1 = require("chai");
|
|
21
|
-
const
|
|
22
|
+
const React = require("@theia/core/shared/react");
|
|
23
|
+
const client_1 = require("@theia/core/shared/react-dom/client");
|
|
24
|
+
const messaging_1 = require("@theia/core/shared/@lumino/messaging");
|
|
22
25
|
const event_1 = require("@theia/core/lib/common/event");
|
|
23
26
|
const label_parser_1 = require("@theia/core/lib/browser/label-parser");
|
|
24
27
|
const scm_repositories_widget_1 = require("./scm-repositories-widget");
|
|
28
|
+
disableReactActEnvironment();
|
|
25
29
|
disableJSDOM();
|
|
26
30
|
function makeRepo(opts) {
|
|
27
31
|
return {
|
|
@@ -68,7 +72,10 @@ function createWidget(opts) {
|
|
|
68
72
|
widget.commandService = mockCommandService;
|
|
69
73
|
widget.contextMenuRenderer = mockContextMenuRenderer;
|
|
70
74
|
widget.scmContextKeys = mockScmContextKeys;
|
|
71
|
-
|
|
75
|
+
React.act(() => {
|
|
76
|
+
widget.init();
|
|
77
|
+
messaging_1.MessageLoop.flush();
|
|
78
|
+
});
|
|
72
79
|
return widget;
|
|
73
80
|
}
|
|
74
81
|
describe('ScmRepositoriesWidget', () => {
|
|
@@ -79,13 +86,17 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
79
86
|
let onChangedSelectedEmitter;
|
|
80
87
|
let executedCommands;
|
|
81
88
|
let widget;
|
|
89
|
+
let renderedRoots;
|
|
82
90
|
before(() => {
|
|
83
91
|
disableJSDOM = (0, jsdom_1.enableJSDOM)();
|
|
92
|
+
disableReactActEnvironment = (0, jsdom_1.enableReactActEnvironment)();
|
|
84
93
|
});
|
|
85
94
|
after(() => {
|
|
95
|
+
disableReactActEnvironment();
|
|
86
96
|
disableJSDOM();
|
|
87
97
|
});
|
|
88
98
|
beforeEach(() => {
|
|
99
|
+
renderedRoots = [];
|
|
89
100
|
repositories = [];
|
|
90
101
|
selectedRepositoryRef = { value: undefined };
|
|
91
102
|
onAddEmitter = new event_1.Emitter();
|
|
@@ -102,10 +113,37 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
102
113
|
});
|
|
103
114
|
});
|
|
104
115
|
afterEach(() => {
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
116
|
+
try {
|
|
117
|
+
React.act(() => {
|
|
118
|
+
for (const { root } of renderedRoots) {
|
|
119
|
+
root.unmount();
|
|
120
|
+
}
|
|
121
|
+
widget.dispose();
|
|
122
|
+
messaging_1.MessageLoop.flush();
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
finally {
|
|
126
|
+
for (const { container } of renderedRoots) {
|
|
127
|
+
container.remove();
|
|
128
|
+
}
|
|
129
|
+
renderedRoots = [];
|
|
130
|
+
onAddEmitter.dispose();
|
|
131
|
+
onRemoveEmitter.dispose();
|
|
132
|
+
onChangedSelectedEmitter.dispose();
|
|
133
|
+
}
|
|
108
134
|
});
|
|
135
|
+
function actAndFlush(fn) {
|
|
136
|
+
React.act(() => {
|
|
137
|
+
fn();
|
|
138
|
+
messaging_1.MessageLoop.flush();
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
function fireRepositoryAdded(repository) {
|
|
142
|
+
actAndFlush(() => onAddEmitter.fire(repository));
|
|
143
|
+
}
|
|
144
|
+
function fireRepositoryRemoved(repository) {
|
|
145
|
+
actAndFlush(() => onRemoveEmitter.fire(repository));
|
|
146
|
+
}
|
|
109
147
|
// --- Visibility ---
|
|
110
148
|
it('should not programmatically show when there are no repositories', () => {
|
|
111
149
|
// The widget does not call setHidden(false) with < 2 repos.
|
|
@@ -116,7 +154,7 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
116
154
|
it('should not programmatically show when there is exactly one repository', () => {
|
|
117
155
|
const repo = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo1' });
|
|
118
156
|
repositories.push(repo);
|
|
119
|
-
|
|
157
|
+
fireRepositoryAdded(repo);
|
|
120
158
|
// With < 2 repos the widget does NOT call setHidden(false).
|
|
121
159
|
// It remains in its initial state (visible in standalone test, hidden in real ViewContainer).
|
|
122
160
|
(0, chai_1.expect)(widget.isHidden).to.be.false;
|
|
@@ -125,17 +163,17 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
125
163
|
const repo1 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo1' });
|
|
126
164
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo2' });
|
|
127
165
|
repositories.push(repo1, repo2);
|
|
128
|
-
|
|
166
|
+
fireRepositoryAdded(repo2);
|
|
129
167
|
(0, chai_1.expect)(widget.isHidden).to.be.false;
|
|
130
168
|
});
|
|
131
169
|
it('should not programmatically hide when repositories drop below 2', () => {
|
|
132
170
|
const repo1 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo1' });
|
|
133
171
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo2' });
|
|
134
172
|
repositories.push(repo1, repo2);
|
|
135
|
-
|
|
173
|
+
fireRepositoryAdded(repo2);
|
|
136
174
|
(0, chai_1.expect)(widget.isHidden).to.be.false;
|
|
137
175
|
repositories.splice(1, 1);
|
|
138
|
-
|
|
176
|
+
fireRepositoryRemoved(repo2);
|
|
139
177
|
// Widget stays visible — we never programmatically hide
|
|
140
178
|
(0, chai_1.expect)(widget.isHidden).to.be.false;
|
|
141
179
|
});
|
|
@@ -146,8 +184,13 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
146
184
|
function renderIntoContainer(node) {
|
|
147
185
|
const container = document.createElement('div');
|
|
148
186
|
document.body.appendChild(container);
|
|
149
|
-
|
|
150
|
-
|
|
187
|
+
const root = (0, client_1.createRoot)(container);
|
|
188
|
+
const renderedRoot = { container, root };
|
|
189
|
+
renderedRoots.push(renderedRoot);
|
|
190
|
+
React.act(() => {
|
|
191
|
+
root.render(node);
|
|
192
|
+
});
|
|
193
|
+
return renderedRoot;
|
|
151
194
|
}
|
|
152
195
|
it('should render a repo icon, folder name, and status commands for each repository', () => {
|
|
153
196
|
const repo1 = makeRepo({
|
|
@@ -156,9 +199,9 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
156
199
|
});
|
|
157
200
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo2' });
|
|
158
201
|
repositories.push(repo1, repo2);
|
|
159
|
-
|
|
202
|
+
fireRepositoryAdded(repo2);
|
|
160
203
|
const rendered = widget.render();
|
|
161
|
-
const container = renderIntoContainer(rendered);
|
|
204
|
+
const { container } = renderIntoContainer(rendered);
|
|
162
205
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
163
206
|
(0, chai_1.expect)(rows.length).to.equal(2);
|
|
164
207
|
const myrepoRow = Array.from(rows).find(r => r.querySelector('.theia-scm-repository-name')?.textContent === 'myrepo');
|
|
@@ -167,22 +210,18 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
167
210
|
(0, chai_1.expect)(iconEl).to.exist;
|
|
168
211
|
const statusCmd = myrepoRow.querySelector('.theia-scm-repository-status-command');
|
|
169
212
|
(0, chai_1.expect)(statusCmd).to.exist;
|
|
170
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
171
|
-
container.remove();
|
|
172
213
|
});
|
|
173
214
|
it('should apply "selected" class only to the selected repository row', () => {
|
|
174
215
|
const repo1 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo1' });
|
|
175
216
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo2' });
|
|
176
217
|
repositories.push(repo1, repo2);
|
|
177
218
|
selectedRepositoryRef.value = repo1;
|
|
178
|
-
|
|
219
|
+
fireRepositoryAdded(repo2);
|
|
179
220
|
const rendered = widget.render();
|
|
180
|
-
const container = renderIntoContainer(rendered);
|
|
221
|
+
const { container } = renderIntoContainer(rendered);
|
|
181
222
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
182
223
|
(0, chai_1.expect)(rows[0].classList.contains('selected')).to.be.true;
|
|
183
224
|
(0, chai_1.expect)(rows[1].classList.contains('selected')).to.be.false;
|
|
184
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
185
|
-
container.remove();
|
|
186
225
|
});
|
|
187
226
|
it('should execute the status command when clicked and stop propagation', async () => {
|
|
188
227
|
const repo1 = makeRepo({
|
|
@@ -191,9 +230,9 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
191
230
|
});
|
|
192
231
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo2' });
|
|
193
232
|
repositories.push(repo1, repo2);
|
|
194
|
-
|
|
233
|
+
fireRepositoryAdded(repo2);
|
|
195
234
|
const rendered = widget.render();
|
|
196
|
-
const container = renderIntoContainer(rendered);
|
|
235
|
+
const { container } = renderIntoContainer(rendered);
|
|
197
236
|
const statusCmd = container.querySelector('.theia-scm-repository-status-command');
|
|
198
237
|
(0, chai_1.expect)(statusCmd).to.exist;
|
|
199
238
|
statusCmd.click();
|
|
@@ -201,8 +240,6 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
201
240
|
(0, chai_1.expect)(executedCommands).to.have.length(1);
|
|
202
241
|
(0, chai_1.expect)(executedCommands[0].id).to.equal('git.sync');
|
|
203
242
|
(0, chai_1.expect)(executedCommands[0].args).to.deep.equal(['arg1']);
|
|
204
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
205
|
-
container.remove();
|
|
206
243
|
});
|
|
207
244
|
// --- Grouping: parent-based nesting ---
|
|
208
245
|
it('should show worktrees nested under their parent repo with collapse toggle', () => {
|
|
@@ -221,9 +258,9 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
221
258
|
parentRootUri: '/projects/myrepo'
|
|
222
259
|
});
|
|
223
260
|
repositories.push(parent, wt1, wt2);
|
|
224
|
-
|
|
261
|
+
fireRepositoryAdded(wt1);
|
|
225
262
|
const rendered = widget.render();
|
|
226
|
-
const container = renderIntoContainer(rendered);
|
|
263
|
+
const { container } = renderIntoContainer(rendered);
|
|
227
264
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
228
265
|
(0, chai_1.expect)(rows.length).to.equal(3);
|
|
229
266
|
// Parent has collapse toggle
|
|
@@ -233,8 +270,6 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
233
270
|
(0, chai_1.expect)(rows[2].classList.contains('child')).to.be.true;
|
|
234
271
|
// Parent does not have .child class
|
|
235
272
|
(0, chai_1.expect)(rows[0].classList.contains('child')).to.be.false;
|
|
236
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
237
|
-
container.remove();
|
|
238
273
|
});
|
|
239
274
|
it('should show submodules nested under their parent repo', () => {
|
|
240
275
|
const parent = makeRepo({
|
|
@@ -247,9 +282,9 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
247
282
|
parentRootUri: '/projects/myrepo'
|
|
248
283
|
});
|
|
249
284
|
repositories.push(parent, sub);
|
|
250
|
-
|
|
285
|
+
fireRepositoryAdded(sub);
|
|
251
286
|
const rendered = widget.render();
|
|
252
|
-
const container = renderIntoContainer(rendered);
|
|
287
|
+
const { container } = renderIntoContainer(rendered);
|
|
253
288
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
254
289
|
(0, chai_1.expect)(rows.length).to.equal(2);
|
|
255
290
|
(0, chai_1.expect)(rows[0].querySelector('.theia-scm-repository-collapse-toggle')).to.exist;
|
|
@@ -258,8 +293,6 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
258
293
|
const subIcon = rows[1].querySelector('.theia-scm-repository-icon');
|
|
259
294
|
(0, chai_1.expect)(subIcon).to.exist;
|
|
260
295
|
(0, chai_1.expect)(subIcon.className).to.include('codicon-file-submodule');
|
|
261
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
262
|
-
container.remove();
|
|
263
296
|
});
|
|
264
297
|
it('should show independent nested repos flat without grouping', () => {
|
|
265
298
|
const gitRepo = makeRepo({
|
|
@@ -271,9 +304,9 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
271
304
|
providerContextValue: 'repository'
|
|
272
305
|
});
|
|
273
306
|
repositories.push(gitRepo, nestedRepo);
|
|
274
|
-
|
|
307
|
+
fireRepositoryAdded(nestedRepo);
|
|
275
308
|
const rendered = widget.render();
|
|
276
|
-
const container = renderIntoContainer(rendered);
|
|
309
|
+
const { container } = renderIntoContainer(rendered);
|
|
277
310
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
278
311
|
// Both repos are flat (no parent relationship set)
|
|
279
312
|
(0, chai_1.expect)(rows.length).to.equal(2);
|
|
@@ -287,8 +320,6 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
287
320
|
const icon1 = rows[1].querySelector('.theia-scm-repository-icon');
|
|
288
321
|
(0, chai_1.expect)(icon0.className).to.include('codicon-repo');
|
|
289
322
|
(0, chai_1.expect)(icon1.className).to.include('codicon-repo');
|
|
290
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
291
|
-
container.remove();
|
|
292
323
|
});
|
|
293
324
|
it('should use codicon-worktree for worktrees', () => {
|
|
294
325
|
const parent = makeRepo({
|
|
@@ -300,14 +331,12 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
300
331
|
parentRootUri: '/projects/myrepo'
|
|
301
332
|
});
|
|
302
333
|
repositories.push(parent, wt);
|
|
303
|
-
|
|
334
|
+
fireRepositoryAdded(wt);
|
|
304
335
|
const rendered = widget.render();
|
|
305
|
-
const container = renderIntoContainer(rendered);
|
|
336
|
+
const { container } = renderIntoContainer(rendered);
|
|
306
337
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
307
338
|
const wtIcon = rows[1].querySelector('.theia-scm-repository-icon');
|
|
308
339
|
(0, chai_1.expect)(wtIcon.className).to.include('codicon-worktree');
|
|
309
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
310
|
-
container.remove();
|
|
311
340
|
});
|
|
312
341
|
it('should handle mixed scenario: parent + worktree + submodule + independent repo', () => {
|
|
313
342
|
const parent = makeRepo({
|
|
@@ -329,9 +358,9 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
329
358
|
providerContextValue: 'repository'
|
|
330
359
|
});
|
|
331
360
|
repositories.push(parent, wt, sub, independent);
|
|
332
|
-
|
|
361
|
+
fireRepositoryAdded(independent);
|
|
333
362
|
const rendered = widget.render();
|
|
334
|
-
const container = renderIntoContainer(rendered);
|
|
363
|
+
const { container } = renderIntoContainer(rendered);
|
|
335
364
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
336
365
|
// parent (root with toggle) + wt (child) + sub (child) + independent (root, no toggle)
|
|
337
366
|
(0, chai_1.expect)(rows.length).to.equal(4);
|
|
@@ -344,8 +373,6 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
344
373
|
// Fourth: independent, flat, no collapse toggle
|
|
345
374
|
(0, chai_1.expect)(rows[3].classList.contains('child')).to.be.false;
|
|
346
375
|
(0, chai_1.expect)(rows[3].querySelector('.theia-scm-repository-collapse-toggle')).to.not.exist;
|
|
347
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
348
|
-
container.remove();
|
|
349
376
|
});
|
|
350
377
|
it('should hide children when parent is collapsed', () => {
|
|
351
378
|
const parent = makeRepo({
|
|
@@ -357,46 +384,40 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
357
384
|
parentRootUri: '/projects/myrepo'
|
|
358
385
|
});
|
|
359
386
|
repositories.push(parent, child);
|
|
360
|
-
|
|
387
|
+
fireRepositoryAdded(child);
|
|
361
388
|
// Collapse the parent
|
|
362
|
-
widget.toggleCollapse(parent.provider.rootUri);
|
|
389
|
+
actAndFlush(() => widget.toggleCollapse(parent.provider.rootUri));
|
|
363
390
|
const rendered = widget.render();
|
|
364
|
-
const container = renderIntoContainer(rendered);
|
|
391
|
+
const { container } = renderIntoContainer(rendered);
|
|
365
392
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
366
393
|
(0, chai_1.expect)(rows.length).to.equal(1);
|
|
367
394
|
const toggle = rows[0].querySelector('.theia-scm-repository-collapse-toggle');
|
|
368
395
|
(0, chai_1.expect)(toggle).to.exist;
|
|
369
396
|
(0, chai_1.expect)(toggle.className).to.include('codicon-chevron-right');
|
|
370
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
371
|
-
container.remove();
|
|
372
397
|
});
|
|
373
398
|
it('should render a ... more-button on each repository row', () => {
|
|
374
399
|
const repo1 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo1' });
|
|
375
400
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo2' });
|
|
376
401
|
repositories.push(repo1, repo2);
|
|
377
|
-
|
|
402
|
+
fireRepositoryAdded(repo2);
|
|
378
403
|
const rendered = widget.render();
|
|
379
|
-
const container = renderIntoContainer(rendered);
|
|
404
|
+
const { container } = renderIntoContainer(rendered);
|
|
380
405
|
const moreButtons = container.querySelectorAll('.theia-scm-repository-more-button');
|
|
381
406
|
(0, chai_1.expect)(moreButtons.length).to.equal(2);
|
|
382
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
383
|
-
container.remove();
|
|
384
407
|
});
|
|
385
408
|
it('should create separate flat entries for repos with different provider ids and no parent', () => {
|
|
386
409
|
const gitRepo = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/myrepo' });
|
|
387
410
|
const svnRepo = makeRepo({ id: 'svn', label: 'SVN', rootUri: '/workspace/other' });
|
|
388
411
|
repositories.push(gitRepo, svnRepo);
|
|
389
|
-
|
|
412
|
+
fireRepositoryAdded(svnRepo);
|
|
390
413
|
const rendered = widget.render();
|
|
391
|
-
const container = renderIntoContainer(rendered);
|
|
414
|
+
const { container } = renderIntoContainer(rendered);
|
|
392
415
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
393
416
|
(0, chai_1.expect)(rows.length).to.equal(2);
|
|
394
417
|
(0, chai_1.expect)(rows[0].classList.contains('child')).to.be.false;
|
|
395
418
|
(0, chai_1.expect)(rows[1].classList.contains('child')).to.be.false;
|
|
396
419
|
(0, chai_1.expect)(rows[0].querySelector('.theia-scm-repository-collapse-toggle')).to.not.exist;
|
|
397
420
|
(0, chai_1.expect)(rows[1].querySelector('.theia-scm-repository-collapse-toggle')).to.not.exist;
|
|
398
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
399
|
-
container.remove();
|
|
400
421
|
});
|
|
401
422
|
// --- Duplicate name disambiguation ---
|
|
402
423
|
it('should show relative path descriptions when two repos share the same folder name', () => {
|
|
@@ -404,9 +425,9 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
404
425
|
const repo1 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/foo' });
|
|
405
426
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/bar/foo' });
|
|
406
427
|
repositories.push(repo1, repo2);
|
|
407
|
-
|
|
428
|
+
fireRepositoryAdded(repo2);
|
|
408
429
|
const rendered = widget.render();
|
|
409
|
-
const container = renderIntoContainer(rendered);
|
|
430
|
+
const { container } = renderIntoContainer(rendered);
|
|
410
431
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
411
432
|
(0, chai_1.expect)(rows.length).to.equal(2);
|
|
412
433
|
const desc0 = rows[0].querySelector('.theia-scm-repository-description');
|
|
@@ -416,16 +437,14 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
416
437
|
// Repo at workspace root shows "/", nested repo shows relative path
|
|
417
438
|
(0, chai_1.expect)(desc0.textContent).to.equal('/');
|
|
418
439
|
(0, chai_1.expect)(desc1.textContent).to.equal('bar');
|
|
419
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
420
|
-
container.remove();
|
|
421
440
|
});
|
|
422
441
|
it('should show relative descriptions when duplicate names are in sibling directories', () => {
|
|
423
442
|
const repo1 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/projects/lib' });
|
|
424
443
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/vendor/lib' });
|
|
425
444
|
repositories.push(repo1, repo2);
|
|
426
|
-
|
|
445
|
+
fireRepositoryAdded(repo2);
|
|
427
446
|
const rendered = widget.render();
|
|
428
|
-
const container = renderIntoContainer(rendered);
|
|
447
|
+
const { container } = renderIntoContainer(rendered);
|
|
429
448
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
430
449
|
(0, chai_1.expect)(rows.length).to.equal(2);
|
|
431
450
|
const desc0 = rows[0].querySelector('.theia-scm-repository-description');
|
|
@@ -434,23 +453,19 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
434
453
|
(0, chai_1.expect)(desc1).to.exist;
|
|
435
454
|
(0, chai_1.expect)(desc0.textContent).to.equal('projects');
|
|
436
455
|
(0, chai_1.expect)(desc1.textContent).to.equal('vendor');
|
|
437
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
438
|
-
container.remove();
|
|
439
456
|
});
|
|
440
457
|
it('should not show a description path when all repos have unique folder names', () => {
|
|
441
458
|
const repo1 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/alpha' });
|
|
442
459
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/beta' });
|
|
443
460
|
repositories.push(repo1, repo2);
|
|
444
|
-
|
|
461
|
+
fireRepositoryAdded(repo2);
|
|
445
462
|
const rendered = widget.render();
|
|
446
|
-
const container = renderIntoContainer(rendered);
|
|
463
|
+
const { container } = renderIntoContainer(rendered);
|
|
447
464
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
448
465
|
(0, chai_1.expect)(rows.length).to.equal(2);
|
|
449
466
|
// No description elements since names are unique
|
|
450
467
|
(0, chai_1.expect)(rows[0].querySelector('.theia-scm-repository-description')).to.not.exist;
|
|
451
468
|
(0, chai_1.expect)(rows[1].querySelector('.theia-scm-repository-description')).to.not.exist;
|
|
452
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
453
|
-
container.remove();
|
|
454
469
|
});
|
|
455
470
|
});
|
|
456
471
|
//# sourceMappingURL=scm-repositories-widget.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scm-repositories-widget.spec.js","sourceRoot":"","sources":["../../src/browser/scm-repositories-widget.spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scm-repositories-widget.spec.js","sourceRoot":"","sources":["../../src/browser/scm-repositories-widget.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -131,7 +131,7 @@ export declare namespace ScmElement {
|
|
|
131
131
|
}
|
|
132
132
|
}
|
|
133
133
|
export declare class ScmResourceComponent extends ScmElement<ScmResourceComponent.Props> {
|
|
134
|
-
render(): JSX.Element | undefined;
|
|
134
|
+
render(): React.JSX.Element | undefined;
|
|
135
135
|
protected open: () => void;
|
|
136
136
|
protected readonly contextMenuPath: string[];
|
|
137
137
|
protected get contextMenuArgs(): any[];
|
|
@@ -157,7 +157,7 @@ export declare namespace ScmResourceComponent {
|
|
|
157
157
|
}
|
|
158
158
|
}
|
|
159
159
|
export declare class ScmResourceGroupElement extends ScmElement<ScmResourceGroupComponent.Props> {
|
|
160
|
-
render(): JSX.Element;
|
|
160
|
+
render(): React.JSX.Element;
|
|
161
161
|
protected renderChangeCount(): React.ReactNode;
|
|
162
162
|
protected readonly contextMenuPath: string[];
|
|
163
163
|
protected get contextMenuArgs(): any[];
|
|
@@ -168,7 +168,7 @@ export declare namespace ScmResourceGroupComponent {
|
|
|
168
168
|
}
|
|
169
169
|
}
|
|
170
170
|
export declare class ScmResourceFolderElement extends ScmElement<ScmResourceFolderElement.Props> {
|
|
171
|
-
render(): JSX.Element;
|
|
171
|
+
render(): React.JSX.Element;
|
|
172
172
|
protected readonly contextMenuPath: string[];
|
|
173
173
|
protected get contextMenuArgs(): any[];
|
|
174
174
|
protected get singleNodeArgs(): any[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scm-tree-widget.d.ts","sourceRoot":"","sources":["../../src/browser/scm-tree-widget.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"scm-tree-widget.d.ts","sourceRoot":"","sources":["../../src/browser/scm-tree-widget.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/scm",
|
|
3
|
-
"version": "1.73.0-next.
|
|
3
|
+
"version": "1.73.0-next.40+201e8aea5",
|
|
4
4
|
"description": "Theia - Source control Extension",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/core": "1.73.0-next.
|
|
7
|
-
"@theia/editor": "1.73.0-next.
|
|
8
|
-
"@theia/filesystem": "1.73.0-next.
|
|
9
|
-
"@theia/monaco": "1.73.0-next.
|
|
6
|
+
"@theia/core": "1.73.0-next.40+201e8aea5",
|
|
7
|
+
"@theia/editor": "1.73.0-next.40+201e8aea5",
|
|
8
|
+
"@theia/filesystem": "1.73.0-next.40+201e8aea5",
|
|
9
|
+
"@theia/monaco": "1.73.0-next.40+201e8aea5",
|
|
10
10
|
"@theia/monaco-editor-core": "1.108.201",
|
|
11
11
|
"@types/diff": "^5.2.3",
|
|
12
12
|
"diff": "^5.2.2",
|
|
@@ -55,5 +55,5 @@
|
|
|
55
55
|
"nyc": {
|
|
56
56
|
"extends": "../../configs/nyc.json"
|
|
57
57
|
},
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "201e8aea5001e76ba316499bc634ae485b97b098"
|
|
59
59
|
}
|
|
@@ -273,7 +273,7 @@ export class ScmAmendComponent extends React.Component<ScmAmendComponentProps, S
|
|
|
273
273
|
this.props.setCommitMessage(message);
|
|
274
274
|
}
|
|
275
275
|
|
|
276
|
-
override render(): JSX.Element {
|
|
276
|
+
override render(): React.JSX.Element {
|
|
277
277
|
const neverShrink = this.state.amendingCommits.length <= 3;
|
|
278
278
|
|
|
279
279
|
const style: React.CSSProperties = neverShrink
|
|
@@ -439,7 +439,7 @@ export class ScmAmendComponent extends React.Component<ScmAmendComponentProps, S
|
|
|
439
439
|
</div>;
|
|
440
440
|
}
|
|
441
441
|
|
|
442
|
-
protected renderCommitBeingAmended(commitData: { commit: ScmCommit, avatar: string }, isOldestAmendCommit: boolean): JSX.Element {
|
|
442
|
+
protected renderCommitBeingAmended(commitData: { commit: ScmCommit, avatar: string }, isOldestAmendCommit: boolean): React.JSX.Element {
|
|
443
443
|
if (isOldestAmendCommit && this.state.transition.state !== 'none' && this.state.transition.direction === 'up') {
|
|
444
444
|
return <div className={ScmAmendComponent.Styles.COMMIT_AVATAR_AND_TEXT} style={{ flexGrow: 0, flexShrink: 0 }} key={commitData.commit.id}>
|
|
445
445
|
<div className='fixed-height-commit-container'>
|
|
@@ -14,17 +14,20 @@
|
|
|
14
14
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
|
-
import { enableJSDOM } from '@theia/core/lib/browser/test/jsdom';
|
|
17
|
+
import { enableJSDOM, enableReactActEnvironment } from '@theia/core/lib/browser/test/jsdom';
|
|
18
18
|
let disableJSDOM = enableJSDOM();
|
|
19
|
+
let disableReactActEnvironment = enableReactActEnvironment();
|
|
19
20
|
|
|
20
21
|
import { expect } from 'chai';
|
|
21
22
|
import * as React from '@theia/core/shared/react';
|
|
22
|
-
import
|
|
23
|
+
import { createRoot, Root } from '@theia/core/shared/react-dom/client';
|
|
24
|
+
import { MessageLoop } from '@theia/core/shared/@lumino/messaging';
|
|
23
25
|
import { Emitter } from '@theia/core/lib/common/event';
|
|
24
26
|
import { LabelParser } from '@theia/core/lib/browser/label-parser';
|
|
25
27
|
import { ScmRepositoriesWidget } from './scm-repositories-widget';
|
|
26
28
|
import { ScmRepository } from './scm-repository';
|
|
27
29
|
|
|
30
|
+
disableReactActEnvironment();
|
|
28
31
|
disableJSDOM();
|
|
29
32
|
|
|
30
33
|
interface MakeRepoOptions {
|
|
@@ -98,7 +101,10 @@ function createWidget(opts: CreateWidgetOptions): ScmRepositoriesWidget {
|
|
|
98
101
|
(widget as unknown as Record<string, unknown>).contextMenuRenderer = mockContextMenuRenderer;
|
|
99
102
|
(widget as unknown as Record<string, unknown>).scmContextKeys = mockScmContextKeys;
|
|
100
103
|
|
|
101
|
-
(
|
|
104
|
+
React.act(() => {
|
|
105
|
+
(widget as unknown as { init(): void }).init();
|
|
106
|
+
MessageLoop.flush();
|
|
107
|
+
});
|
|
102
108
|
|
|
103
109
|
return widget;
|
|
104
110
|
}
|
|
@@ -111,16 +117,20 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
111
117
|
let onChangedSelectedEmitter: Emitter<ScmRepository | undefined>;
|
|
112
118
|
let executedCommands: { id: string; args: unknown[] }[];
|
|
113
119
|
let widget: ScmRepositoriesWidget;
|
|
120
|
+
let renderedRoots: Array<{ container: HTMLElement; root: Root }>;
|
|
114
121
|
|
|
115
122
|
before(() => {
|
|
116
123
|
disableJSDOM = enableJSDOM();
|
|
124
|
+
disableReactActEnvironment = enableReactActEnvironment();
|
|
117
125
|
});
|
|
118
126
|
|
|
119
127
|
after(() => {
|
|
128
|
+
disableReactActEnvironment();
|
|
120
129
|
disableJSDOM();
|
|
121
130
|
});
|
|
122
131
|
|
|
123
132
|
beforeEach(() => {
|
|
133
|
+
renderedRoots = [];
|
|
124
134
|
repositories = [];
|
|
125
135
|
selectedRepositoryRef = { value: undefined };
|
|
126
136
|
onAddEmitter = new Emitter<ScmRepository>();
|
|
@@ -138,11 +148,40 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
138
148
|
});
|
|
139
149
|
|
|
140
150
|
afterEach(() => {
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
151
|
+
try {
|
|
152
|
+
React.act(() => {
|
|
153
|
+
for (const { root } of renderedRoots) {
|
|
154
|
+
root.unmount();
|
|
155
|
+
}
|
|
156
|
+
widget.dispose();
|
|
157
|
+
MessageLoop.flush();
|
|
158
|
+
});
|
|
159
|
+
} finally {
|
|
160
|
+
for (const { container } of renderedRoots) {
|
|
161
|
+
container.remove();
|
|
162
|
+
}
|
|
163
|
+
renderedRoots = [];
|
|
164
|
+
onAddEmitter.dispose();
|
|
165
|
+
onRemoveEmitter.dispose();
|
|
166
|
+
onChangedSelectedEmitter.dispose();
|
|
167
|
+
}
|
|
144
168
|
});
|
|
145
169
|
|
|
170
|
+
function actAndFlush(fn: () => void): void {
|
|
171
|
+
React.act(() => {
|
|
172
|
+
fn();
|
|
173
|
+
MessageLoop.flush();
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
function fireRepositoryAdded(repository: ScmRepository): void {
|
|
178
|
+
actAndFlush(() => onAddEmitter.fire(repository));
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
function fireRepositoryRemoved(repository: ScmRepository): void {
|
|
182
|
+
actAndFlush(() => onRemoveEmitter.fire(repository));
|
|
183
|
+
}
|
|
184
|
+
|
|
146
185
|
// --- Visibility ---
|
|
147
186
|
|
|
148
187
|
it('should not programmatically show when there are no repositories', () => {
|
|
@@ -155,7 +194,7 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
155
194
|
it('should not programmatically show when there is exactly one repository', () => {
|
|
156
195
|
const repo = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo1' });
|
|
157
196
|
repositories.push(repo);
|
|
158
|
-
|
|
197
|
+
fireRepositoryAdded(repo);
|
|
159
198
|
// With < 2 repos the widget does NOT call setHidden(false).
|
|
160
199
|
// It remains in its initial state (visible in standalone test, hidden in real ViewContainer).
|
|
161
200
|
expect(widget.isHidden).to.be.false;
|
|
@@ -165,7 +204,7 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
165
204
|
const repo1 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo1' });
|
|
166
205
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo2' });
|
|
167
206
|
repositories.push(repo1, repo2);
|
|
168
|
-
|
|
207
|
+
fireRepositoryAdded(repo2);
|
|
169
208
|
expect(widget.isHidden).to.be.false;
|
|
170
209
|
});
|
|
171
210
|
|
|
@@ -173,11 +212,11 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
173
212
|
const repo1 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo1' });
|
|
174
213
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo2' });
|
|
175
214
|
repositories.push(repo1, repo2);
|
|
176
|
-
|
|
215
|
+
fireRepositoryAdded(repo2);
|
|
177
216
|
expect(widget.isHidden).to.be.false;
|
|
178
217
|
|
|
179
218
|
repositories.splice(1, 1);
|
|
180
|
-
|
|
219
|
+
fireRepositoryRemoved(repo2);
|
|
181
220
|
// Widget stays visible — we never programmatically hide
|
|
182
221
|
expect(widget.isHidden).to.be.false;
|
|
183
222
|
});
|
|
@@ -188,11 +227,16 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
188
227
|
|
|
189
228
|
// --- Rendering ---
|
|
190
229
|
|
|
191
|
-
function renderIntoContainer(node: React.ReactNode): HTMLElement {
|
|
230
|
+
function renderIntoContainer(node: React.ReactNode): { container: HTMLElement; root: Root } {
|
|
192
231
|
const container = document.createElement('div');
|
|
193
232
|
document.body.appendChild(container);
|
|
194
|
-
|
|
195
|
-
|
|
233
|
+
const root = createRoot(container);
|
|
234
|
+
const renderedRoot = { container, root };
|
|
235
|
+
renderedRoots.push(renderedRoot);
|
|
236
|
+
React.act(() => {
|
|
237
|
+
root.render(node);
|
|
238
|
+
});
|
|
239
|
+
return renderedRoot;
|
|
196
240
|
}
|
|
197
241
|
|
|
198
242
|
it('should render a repo icon, folder name, and status commands for each repository', () => {
|
|
@@ -202,10 +246,10 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
202
246
|
});
|
|
203
247
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo2' });
|
|
204
248
|
repositories.push(repo1, repo2);
|
|
205
|
-
|
|
249
|
+
fireRepositoryAdded(repo2);
|
|
206
250
|
|
|
207
251
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
208
|
-
const container = renderIntoContainer(rendered);
|
|
252
|
+
const { container } = renderIntoContainer(rendered);
|
|
209
253
|
|
|
210
254
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
211
255
|
expect(rows.length).to.equal(2);
|
|
@@ -218,9 +262,6 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
218
262
|
|
|
219
263
|
const statusCmd = myrepoRow!.querySelector('.theia-scm-repository-status-command');
|
|
220
264
|
expect(statusCmd).to.exist;
|
|
221
|
-
|
|
222
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
223
|
-
container.remove();
|
|
224
265
|
});
|
|
225
266
|
|
|
226
267
|
it('should apply "selected" class only to the selected repository row', () => {
|
|
@@ -228,17 +269,14 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
228
269
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo2' });
|
|
229
270
|
repositories.push(repo1, repo2);
|
|
230
271
|
selectedRepositoryRef.value = repo1;
|
|
231
|
-
|
|
272
|
+
fireRepositoryAdded(repo2);
|
|
232
273
|
|
|
233
274
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
234
|
-
const container = renderIntoContainer(rendered);
|
|
275
|
+
const { container } = renderIntoContainer(rendered);
|
|
235
276
|
|
|
236
277
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
237
278
|
expect(rows[0].classList.contains('selected')).to.be.true;
|
|
238
279
|
expect(rows[1].classList.contains('selected')).to.be.false;
|
|
239
|
-
|
|
240
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
241
|
-
container.remove();
|
|
242
280
|
});
|
|
243
281
|
|
|
244
282
|
it('should execute the status command when clicked and stop propagation', async () => {
|
|
@@ -248,10 +286,10 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
248
286
|
});
|
|
249
287
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo2' });
|
|
250
288
|
repositories.push(repo1, repo2);
|
|
251
|
-
|
|
289
|
+
fireRepositoryAdded(repo2);
|
|
252
290
|
|
|
253
291
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
254
|
-
const container = renderIntoContainer(rendered);
|
|
292
|
+
const { container } = renderIntoContainer(rendered);
|
|
255
293
|
|
|
256
294
|
const statusCmd = container.querySelector('.theia-scm-repository-status-command') as HTMLElement;
|
|
257
295
|
expect(statusCmd).to.exist;
|
|
@@ -262,9 +300,6 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
262
300
|
expect(executedCommands).to.have.length(1);
|
|
263
301
|
expect(executedCommands[0].id).to.equal('git.sync');
|
|
264
302
|
expect(executedCommands[0].args).to.deep.equal(['arg1']);
|
|
265
|
-
|
|
266
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
267
|
-
container.remove();
|
|
268
303
|
});
|
|
269
304
|
|
|
270
305
|
// --- Grouping: parent-based nesting ---
|
|
@@ -285,10 +320,10 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
285
320
|
parentRootUri: '/projects/myrepo'
|
|
286
321
|
});
|
|
287
322
|
repositories.push(parent, wt1, wt2);
|
|
288
|
-
|
|
323
|
+
fireRepositoryAdded(wt1);
|
|
289
324
|
|
|
290
325
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
291
|
-
const container = renderIntoContainer(rendered);
|
|
326
|
+
const { container } = renderIntoContainer(rendered);
|
|
292
327
|
|
|
293
328
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
294
329
|
expect(rows.length).to.equal(3);
|
|
@@ -300,9 +335,6 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
300
335
|
expect(rows[2].classList.contains('child')).to.be.true;
|
|
301
336
|
// Parent does not have .child class
|
|
302
337
|
expect(rows[0].classList.contains('child')).to.be.false;
|
|
303
|
-
|
|
304
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
305
|
-
container.remove();
|
|
306
338
|
});
|
|
307
339
|
|
|
308
340
|
it('should show submodules nested under their parent repo', () => {
|
|
@@ -316,10 +348,10 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
316
348
|
parentRootUri: '/projects/myrepo'
|
|
317
349
|
});
|
|
318
350
|
repositories.push(parent, sub);
|
|
319
|
-
|
|
351
|
+
fireRepositoryAdded(sub);
|
|
320
352
|
|
|
321
353
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
322
|
-
const container = renderIntoContainer(rendered);
|
|
354
|
+
const { container } = renderIntoContainer(rendered);
|
|
323
355
|
|
|
324
356
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
325
357
|
expect(rows.length).to.equal(2);
|
|
@@ -331,9 +363,6 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
331
363
|
const subIcon = rows[1].querySelector('.theia-scm-repository-icon');
|
|
332
364
|
expect(subIcon).to.exist;
|
|
333
365
|
expect(subIcon!.className).to.include('codicon-file-submodule');
|
|
334
|
-
|
|
335
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
336
|
-
container.remove();
|
|
337
366
|
});
|
|
338
367
|
|
|
339
368
|
it('should show independent nested repos flat without grouping', () => {
|
|
@@ -346,10 +375,10 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
346
375
|
providerContextValue: 'repository'
|
|
347
376
|
});
|
|
348
377
|
repositories.push(gitRepo, nestedRepo);
|
|
349
|
-
|
|
378
|
+
fireRepositoryAdded(nestedRepo);
|
|
350
379
|
|
|
351
380
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
352
|
-
const container = renderIntoContainer(rendered);
|
|
381
|
+
const { container } = renderIntoContainer(rendered);
|
|
353
382
|
|
|
354
383
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
355
384
|
// Both repos are flat (no parent relationship set)
|
|
@@ -365,9 +394,6 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
365
394
|
const icon1 = rows[1].querySelector('.theia-scm-repository-icon');
|
|
366
395
|
expect(icon0!.className).to.include('codicon-repo');
|
|
367
396
|
expect(icon1!.className).to.include('codicon-repo');
|
|
368
|
-
|
|
369
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
370
|
-
container.remove();
|
|
371
397
|
});
|
|
372
398
|
|
|
373
399
|
it('should use codicon-worktree for worktrees', () => {
|
|
@@ -380,17 +406,14 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
380
406
|
parentRootUri: '/projects/myrepo'
|
|
381
407
|
});
|
|
382
408
|
repositories.push(parent, wt);
|
|
383
|
-
|
|
409
|
+
fireRepositoryAdded(wt);
|
|
384
410
|
|
|
385
411
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
386
|
-
const container = renderIntoContainer(rendered);
|
|
412
|
+
const { container } = renderIntoContainer(rendered);
|
|
387
413
|
|
|
388
414
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
389
415
|
const wtIcon = rows[1].querySelector('.theia-scm-repository-icon');
|
|
390
416
|
expect(wtIcon!.className).to.include('codicon-worktree');
|
|
391
|
-
|
|
392
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
393
|
-
container.remove();
|
|
394
417
|
});
|
|
395
418
|
|
|
396
419
|
it('should handle mixed scenario: parent + worktree + submodule + independent repo', () => {
|
|
@@ -413,10 +436,10 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
413
436
|
providerContextValue: 'repository'
|
|
414
437
|
});
|
|
415
438
|
repositories.push(parent, wt, sub, independent);
|
|
416
|
-
|
|
439
|
+
fireRepositoryAdded(independent);
|
|
417
440
|
|
|
418
441
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
419
|
-
const container = renderIntoContainer(rendered);
|
|
442
|
+
const { container } = renderIntoContainer(rendered);
|
|
420
443
|
|
|
421
444
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
422
445
|
// parent (root with toggle) + wt (child) + sub (child) + independent (root, no toggle)
|
|
@@ -433,9 +456,6 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
433
456
|
// Fourth: independent, flat, no collapse toggle
|
|
434
457
|
expect(rows[3].classList.contains('child')).to.be.false;
|
|
435
458
|
expect(rows[3].querySelector('.theia-scm-repository-collapse-toggle')).to.not.exist;
|
|
436
|
-
|
|
437
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
438
|
-
container.remove();
|
|
439
459
|
});
|
|
440
460
|
|
|
441
461
|
it('should hide children when parent is collapsed', () => {
|
|
@@ -448,48 +468,42 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
448
468
|
parentRootUri: '/projects/myrepo'
|
|
449
469
|
});
|
|
450
470
|
repositories.push(parent, child);
|
|
451
|
-
|
|
471
|
+
fireRepositoryAdded(child);
|
|
452
472
|
|
|
453
473
|
// Collapse the parent
|
|
454
|
-
(widget as unknown as { toggleCollapse(uri: string): void }).toggleCollapse(parent.provider.rootUri);
|
|
474
|
+
actAndFlush(() => (widget as unknown as { toggleCollapse(uri: string): void }).toggleCollapse(parent.provider.rootUri));
|
|
455
475
|
|
|
456
476
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
457
|
-
const container = renderIntoContainer(rendered);
|
|
477
|
+
const { container } = renderIntoContainer(rendered);
|
|
458
478
|
|
|
459
479
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
460
480
|
expect(rows.length).to.equal(1);
|
|
461
481
|
const toggle = rows[0].querySelector('.theia-scm-repository-collapse-toggle');
|
|
462
482
|
expect(toggle).to.exist;
|
|
463
483
|
expect(toggle!.className).to.include('codicon-chevron-right');
|
|
464
|
-
|
|
465
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
466
|
-
container.remove();
|
|
467
484
|
});
|
|
468
485
|
|
|
469
486
|
it('should render a ... more-button on each repository row', () => {
|
|
470
487
|
const repo1 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo1' });
|
|
471
488
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/repo2' });
|
|
472
489
|
repositories.push(repo1, repo2);
|
|
473
|
-
|
|
490
|
+
fireRepositoryAdded(repo2);
|
|
474
491
|
|
|
475
492
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
476
|
-
const container = renderIntoContainer(rendered);
|
|
493
|
+
const { container } = renderIntoContainer(rendered);
|
|
477
494
|
|
|
478
495
|
const moreButtons = container.querySelectorAll('.theia-scm-repository-more-button');
|
|
479
496
|
expect(moreButtons.length).to.equal(2);
|
|
480
|
-
|
|
481
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
482
|
-
container.remove();
|
|
483
497
|
});
|
|
484
498
|
|
|
485
499
|
it('should create separate flat entries for repos with different provider ids and no parent', () => {
|
|
486
500
|
const gitRepo = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/myrepo' });
|
|
487
501
|
const svnRepo = makeRepo({ id: 'svn', label: 'SVN', rootUri: '/workspace/other' });
|
|
488
502
|
repositories.push(gitRepo, svnRepo);
|
|
489
|
-
|
|
503
|
+
fireRepositoryAdded(svnRepo);
|
|
490
504
|
|
|
491
505
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
492
|
-
const container = renderIntoContainer(rendered);
|
|
506
|
+
const { container } = renderIntoContainer(rendered);
|
|
493
507
|
|
|
494
508
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
495
509
|
expect(rows.length).to.equal(2);
|
|
@@ -497,9 +511,6 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
497
511
|
expect(rows[1].classList.contains('child')).to.be.false;
|
|
498
512
|
expect(rows[0].querySelector('.theia-scm-repository-collapse-toggle')).to.not.exist;
|
|
499
513
|
expect(rows[1].querySelector('.theia-scm-repository-collapse-toggle')).to.not.exist;
|
|
500
|
-
|
|
501
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
502
|
-
container.remove();
|
|
503
514
|
});
|
|
504
515
|
|
|
505
516
|
// --- Duplicate name disambiguation ---
|
|
@@ -509,10 +520,10 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
509
520
|
const repo1 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/foo' });
|
|
510
521
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/bar/foo' });
|
|
511
522
|
repositories.push(repo1, repo2);
|
|
512
|
-
|
|
523
|
+
fireRepositoryAdded(repo2);
|
|
513
524
|
|
|
514
525
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
515
|
-
const container = renderIntoContainer(rendered);
|
|
526
|
+
const { container } = renderIntoContainer(rendered);
|
|
516
527
|
|
|
517
528
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
518
529
|
expect(rows.length).to.equal(2);
|
|
@@ -525,19 +536,16 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
525
536
|
// Repo at workspace root shows "/", nested repo shows relative path
|
|
526
537
|
expect(desc0!.textContent).to.equal('/');
|
|
527
538
|
expect(desc1!.textContent).to.equal('bar');
|
|
528
|
-
|
|
529
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
530
|
-
container.remove();
|
|
531
539
|
});
|
|
532
540
|
|
|
533
541
|
it('should show relative descriptions when duplicate names are in sibling directories', () => {
|
|
534
542
|
const repo1 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/projects/lib' });
|
|
535
543
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/vendor/lib' });
|
|
536
544
|
repositories.push(repo1, repo2);
|
|
537
|
-
|
|
545
|
+
fireRepositoryAdded(repo2);
|
|
538
546
|
|
|
539
547
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
540
|
-
const container = renderIntoContainer(rendered);
|
|
548
|
+
const { container } = renderIntoContainer(rendered);
|
|
541
549
|
|
|
542
550
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
543
551
|
expect(rows.length).to.equal(2);
|
|
@@ -549,19 +557,16 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
549
557
|
|
|
550
558
|
expect(desc0!.textContent).to.equal('projects');
|
|
551
559
|
expect(desc1!.textContent).to.equal('vendor');
|
|
552
|
-
|
|
553
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
554
|
-
container.remove();
|
|
555
560
|
});
|
|
556
561
|
|
|
557
562
|
it('should not show a description path when all repos have unique folder names', () => {
|
|
558
563
|
const repo1 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/alpha' });
|
|
559
564
|
const repo2 = makeRepo({ id: 'git', label: 'Git', rootUri: '/workspace/beta' });
|
|
560
565
|
repositories.push(repo1, repo2);
|
|
561
|
-
|
|
566
|
+
fireRepositoryAdded(repo2);
|
|
562
567
|
|
|
563
568
|
const rendered = (widget as unknown as { render(): React.ReactNode }).render();
|
|
564
|
-
const container = renderIntoContainer(rendered);
|
|
569
|
+
const { container } = renderIntoContainer(rendered);
|
|
565
570
|
|
|
566
571
|
const rows = container.querySelectorAll('.theia-scm-repository-item');
|
|
567
572
|
expect(rows.length).to.equal(2);
|
|
@@ -569,8 +574,5 @@ describe('ScmRepositoriesWidget', () => {
|
|
|
569
574
|
// No description elements since names are unique
|
|
570
575
|
expect(rows[0].querySelector('.theia-scm-repository-description')).to.not.exist;
|
|
571
576
|
expect(rows[1].querySelector('.theia-scm-repository-description')).to.not.exist;
|
|
572
|
-
|
|
573
|
-
ReactDOM.unmountComponentAtNode(container);
|
|
574
|
-
container.remove();
|
|
575
577
|
});
|
|
576
578
|
});
|
|
@@ -564,7 +564,7 @@ export namespace ScmElement {
|
|
|
564
564
|
|
|
565
565
|
export class ScmResourceComponent extends ScmElement<ScmResourceComponent.Props> {
|
|
566
566
|
|
|
567
|
-
override render(): JSX.Element | undefined {
|
|
567
|
+
override render(): React.JSX.Element | undefined {
|
|
568
568
|
const { hover } = this.state;
|
|
569
569
|
const { model, treeNode, colors, parentPath, sourceUri, decoration, labelProvider, menus, contextKeys, caption, isLightTheme } = this.props;
|
|
570
570
|
const resourceUri = new URI(sourceUri);
|
|
@@ -685,7 +685,7 @@ export namespace ScmResourceComponent {
|
|
|
685
685
|
|
|
686
686
|
export class ScmResourceGroupElement extends ScmElement<ScmResourceGroupComponent.Props> {
|
|
687
687
|
|
|
688
|
-
override render(): JSX.Element {
|
|
688
|
+
override render(): React.JSX.Element {
|
|
689
689
|
const { hover } = this.state;
|
|
690
690
|
const { model, treeNode, menus, contextKeys, caption } = this.props;
|
|
691
691
|
return <div className={`theia-header scm-theia-header ${TREE_NODE_SEGMENT_GROW_CLASS}`}
|
|
@@ -735,7 +735,7 @@ export namespace ScmResourceGroupComponent {
|
|
|
735
735
|
|
|
736
736
|
export class ScmResourceFolderElement extends ScmElement<ScmResourceFolderElement.Props> {
|
|
737
737
|
|
|
738
|
-
override render(): JSX.Element {
|
|
738
|
+
override render(): React.JSX.Element {
|
|
739
739
|
const { hover } = this.state;
|
|
740
740
|
const { model, treeNode, sourceUri, labelProvider, menus, contextKeys, caption } = this.props;
|
|
741
741
|
const sourceFileStat = FileStat.dir(sourceUri);
|