@codingame/monaco-vscode-testing-service-override 13.1.6 → 14.0.0
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/package.json +14 -14
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackWidget.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackWidget.js +12 -6
- package/vscode/src/vs/workbench/contrib/testing/browser/codeCoverageDecorations.js +23 -21
- package/vscode/src/vs/workbench/contrib/testing/browser/codeCoverageDisplayUtils.js +5 -5
- package/vscode/src/vs/workbench/contrib/testing/browser/icons.js +29 -29
- package/vscode/src/vs/workbench/contrib/testing/browser/media/testing.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/testing/browser/testCoverageBars.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/testing/browser/testCoverageBars.js +4 -4
- package/vscode/src/vs/workbench/contrib/testing/browser/testCoverageView.js +94 -29
- package/vscode/src/vs/workbench/contrib/testing/browser/testExplorerActions.js +69 -69
- package/vscode/src/vs/workbench/contrib/testing/browser/testResultsView/testResultsOutput.js +7 -9
- package/vscode/src/vs/workbench/contrib/testing/browser/testResultsView/testResultsTree.js +23 -23
- package/vscode/src/vs/workbench/contrib/testing/browser/testResultsView/testResultsViewContent.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/testing/browser/testResultsView/testResultsViewContent.js +21 -13
- package/vscode/src/vs/workbench/contrib/testing/browser/testing.contribution.js +16 -9
- package/vscode/src/vs/workbench/contrib/testing/browser/testingConfigurationUi.js +2 -2
- package/vscode/src/vs/workbench/contrib/testing/browser/testingDecorations.js +18 -18
- package/vscode/src/vs/workbench/contrib/testing/browser/testingExplorerFilter.js +11 -11
- package/vscode/src/vs/workbench/contrib/testing/browser/testingExplorerView.js +29 -24
- package/vscode/src/vs/workbench/contrib/testing/browser/testingOutputPeek.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/testing/browser/testingOutputPeek.js +47 -33
- package/vscode/src/vs/workbench/contrib/testing/browser/testingProgressUiService.js +5 -5
- package/vscode/src/vs/workbench/contrib/testing/browser/testingViewPaneContainer.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/testing/browser/testingViewPaneContainer.js +7 -5
- package/vscode/src/vs/workbench/contrib/testing/browser/theme.js +49 -38
- package/vscode/src/vs/workbench/contrib/testing/common/configuration.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/configuration.js +33 -33
- package/vscode/src/vs/workbench/contrib/testing/common/mainThreadTestCollection.js +4 -2
- package/vscode/src/vs/workbench/contrib/testing/common/observableUtils.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/testing/common/testProfileService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testResultService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testResultStorage.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testService.js +26 -12
- package/vscode/src/vs/workbench/contrib/testing/common/testServiceImpl.js +4 -4
- package/vscode/src/vs/workbench/contrib/testing/common/testingContentProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testingContextKeys.js +29 -29
- package/vscode/src/vs/workbench/contrib/testing/common/testingContinuousRunService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/testing/browser/testResultsView/testMessageStack.d.ts +0 -14
- package/vscode/src/vs/workbench/contrib/testing/browser/testResultsView/testMessageStack.js +0 -30
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-testing-service-override",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "14.0.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "VSCode public API plugged on the monaco editor - testing service-override",
|
|
6
6
|
"keywords": [],
|
|
@@ -15,19 +15,19 @@
|
|
|
15
15
|
},
|
|
16
16
|
"type": "module",
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@codingame/monaco-vscode-0b087f42-a5a3-5eb9-9bfd-1eebc1bba163-common": "
|
|
19
|
-
"@codingame/monaco-vscode-10418ae3-ee63-5700-a757-89cbe6564ee4-common": "
|
|
20
|
-
"@codingame/monaco-vscode-
|
|
21
|
-
"@codingame/monaco-vscode-65619f8f-0eab-5d8b-855a-43b6353fe527-common": "
|
|
22
|
-
"@codingame/monaco-vscode-6845754f-e617-5ed9-8aaa-6ca3653a9532-common": "
|
|
23
|
-
"@codingame/monaco-vscode-
|
|
24
|
-
"@codingame/monaco-vscode-
|
|
25
|
-
"@codingame/monaco-vscode-a7c9ae3c-16d2-5d17-86b2-981be7094566-common": "
|
|
26
|
-
"@codingame/monaco-vscode-api": "
|
|
27
|
-
"@codingame/monaco-vscode-b4efa70b-52b9-5670-ab5c-f10b10b6834e-common": "
|
|
28
|
-
"@codingame/monaco-vscode-
|
|
29
|
-
"@codingame/monaco-vscode-f6ab89b2-83b0-5a43-8772-cb0eafa650b5-common": "
|
|
30
|
-
"@codingame/monaco-vscode-terminal-service-override": "
|
|
18
|
+
"@codingame/monaco-vscode-0b087f42-a5a3-5eb9-9bfd-1eebc1bba163-common": "14.0.0",
|
|
19
|
+
"@codingame/monaco-vscode-10418ae3-ee63-5700-a757-89cbe6564ee4-common": "14.0.0",
|
|
20
|
+
"@codingame/monaco-vscode-4a28f637-7c3c-5e48-a77c-1b7538b38850-common": "14.0.0",
|
|
21
|
+
"@codingame/monaco-vscode-65619f8f-0eab-5d8b-855a-43b6353fe527-common": "14.0.0",
|
|
22
|
+
"@codingame/monaco-vscode-6845754f-e617-5ed9-8aaa-6ca3653a9532-common": "14.0.0",
|
|
23
|
+
"@codingame/monaco-vscode-91789cdf-e3cb-5a04-aaeb-6f7df7d3d231-common": "14.0.0",
|
|
24
|
+
"@codingame/monaco-vscode-a17f5129-e16c-5dac-857e-dcd91bfeffa2-common": "14.0.0",
|
|
25
|
+
"@codingame/monaco-vscode-a7c9ae3c-16d2-5d17-86b2-981be7094566-common": "14.0.0",
|
|
26
|
+
"@codingame/monaco-vscode-api": "14.0.0",
|
|
27
|
+
"@codingame/monaco-vscode-b4efa70b-52b9-5670-ab5c-f10b10b6834e-common": "14.0.0",
|
|
28
|
+
"@codingame/monaco-vscode-eea37658-2307-56a5-8ed0-b2752c7b7a50-common": "14.0.0",
|
|
29
|
+
"@codingame/monaco-vscode-f6ab89b2-83b0-5a43-8772-cb0eafa650b5-common": "14.0.0",
|
|
30
|
+
"@codingame/monaco-vscode-terminal-service-override": "14.0.0"
|
|
31
31
|
},
|
|
32
32
|
"main": "index.js",
|
|
33
33
|
"module": "index.js",
|
|
@@ -32,7 +32,9 @@ export declare class CallStackWidget extends Disposable {
|
|
|
32
32
|
private readonly layoutEmitter;
|
|
33
33
|
private readonly currentFramesDs;
|
|
34
34
|
private cts?;
|
|
35
|
+
get onDidChangeContentHeight(): Event<number>;
|
|
35
36
|
get onDidScroll(): Event<import("@codingame/monaco-vscode-api/vscode/vs/base/common/scrollable").ScrollEvent>;
|
|
37
|
+
get contentHeight(): number;
|
|
36
38
|
constructor(container: HTMLElement, containingEditor: ICodeEditor | undefined, instantiationService: IInstantiationService);
|
|
37
39
|
setFrames(frames: AnyStackFrame[]): void;
|
|
38
40
|
layout(height?: number, width?: number): void;
|
|
@@ -31,7 +31,7 @@ import { ILabelService } from '@codingame/monaco-vscode-api/vscode/vs/platform/l
|
|
|
31
31
|
import { WorkbenchList } from '@codingame/monaco-vscode-api/vscode/vs/platform/list/browser/listService';
|
|
32
32
|
import { INotificationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/notification/common/notification.service';
|
|
33
33
|
import { defaultButtonStyles } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/browser/defaultStyles';
|
|
34
|
-
import { ResourceLabel } from '@codingame/monaco-vscode-
|
|
34
|
+
import { ResourceLabel } from '@codingame/monaco-vscode-91789cdf-e3cb-5a04-aaeb-6f7df7d3d231-common/vscode/vs/workbench/browser/labels';
|
|
35
35
|
import { SIDE_GROUP } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService';
|
|
36
36
|
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
37
37
|
import { makeStackFrameColumnDecoration, TOP_STACK_FRAME_DECORATION } from '@codingame/monaco-vscode-0b087f42-a5a3-5eb9-9bfd-1eebc1bba163-common/vscode/vs/workbench/contrib/debug/browser/callStackEditorContribution';
|
|
@@ -80,9 +80,15 @@ class WrappedCustomStackFrame {
|
|
|
80
80
|
const isFrameLike = (item) => item instanceof WrappedCallStackFrame || item instanceof WrappedCustomStackFrame;
|
|
81
81
|
const WIDGET_CLASS_NAME = 'multiCallStackWidget';
|
|
82
82
|
let CallStackWidget = class CallStackWidget extends Disposable {
|
|
83
|
+
get onDidChangeContentHeight() {
|
|
84
|
+
return this.list.onDidChangeContentHeight;
|
|
85
|
+
}
|
|
83
86
|
get onDidScroll() {
|
|
84
87
|
return this.list.onDidScroll;
|
|
85
88
|
}
|
|
89
|
+
get contentHeight() {
|
|
90
|
+
return this.list.contentHeight;
|
|
91
|
+
}
|
|
86
92
|
constructor(container, containingEditor, instantiationService) {
|
|
87
93
|
super();
|
|
88
94
|
this.layoutEmitter = this._register(( new Emitter()));
|
|
@@ -172,7 +178,7 @@ let StackAccessibilityProvider = class StackAccessibilityProvider {
|
|
|
172
178
|
if (e instanceof CallStackFrame) {
|
|
173
179
|
if (e.source && e.line) {
|
|
174
180
|
return localize(
|
|
175
|
-
|
|
181
|
+
5227,
|
|
176
182
|
'{0}, line {1} in {2}',
|
|
177
183
|
e.name,
|
|
178
184
|
e.line,
|
|
@@ -184,7 +190,7 @@ let StackAccessibilityProvider = class StackAccessibilityProvider {
|
|
|
184
190
|
assertNever();
|
|
185
191
|
}
|
|
186
192
|
getWidgetAriaLabel() {
|
|
187
|
-
return localize(
|
|
193
|
+
return localize(5228, 'Stack Trace');
|
|
188
194
|
}
|
|
189
195
|
};
|
|
190
196
|
StackAccessibilityProvider = ( __decorate([
|
|
@@ -404,7 +410,7 @@ let MissingCodeRenderer = class MissingCodeRenderer {
|
|
|
404
410
|
const cast = element;
|
|
405
411
|
templateData.label.element.setResource({
|
|
406
412
|
name: cast.name,
|
|
407
|
-
description: ( localize(
|
|
413
|
+
description: ( localize(5229, 'Line {0} column {1}', cast.line, cast.column)),
|
|
408
414
|
range: { startLineNumber: cast.line, startColumn: cast.column, endColumn: cast.column, endLineNumber: cast.line },
|
|
409
415
|
}, {
|
|
410
416
|
icon: Codicon.fileBinary,
|
|
@@ -465,7 +471,7 @@ let SkippedRenderer = class SkippedRenderer {
|
|
|
465
471
|
}
|
|
466
472
|
button.enabled = false;
|
|
467
473
|
this.loadFrames(data.current).catch(e => {
|
|
468
|
-
this.notificationService.error(( localize(
|
|
474
|
+
this.notificationService.error(( localize(5230, 'Failed to load stack frames: {0}', e.message)));
|
|
469
475
|
});
|
|
470
476
|
}));
|
|
471
477
|
return data;
|
|
@@ -542,7 +548,7 @@ registerAction2(class extends Action2 {
|
|
|
542
548
|
constructor() {
|
|
543
549
|
super({
|
|
544
550
|
id: 'callStackWidget.goToFile',
|
|
545
|
-
title: ( localize2(
|
|
551
|
+
title: ( localize2(5231, 'Open File')),
|
|
546
552
|
icon: Codicon.goToFile,
|
|
547
553
|
menu: {
|
|
548
554
|
id: MenuId.DebugCallStackToolbar,
|
|
@@ -40,9 +40,8 @@ import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platfor
|
|
|
40
40
|
import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
|
|
41
41
|
import { bindContextKey, observableConfigValue } from '@codingame/monaco-vscode-api/vscode/vs/platform/observable/common/platformObservableUtils';
|
|
42
42
|
import { IQuickInputService } from '@codingame/monaco-vscode-api/vscode/vs/platform/quickinput/common/quickInput.service';
|
|
43
|
-
import {
|
|
44
|
-
import {
|
|
45
|
-
import { ManagedTestCoverageBars } from './testCoverageBars.js';
|
|
43
|
+
import { ActiveEditorContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contextkeys';
|
|
44
|
+
import { TEXT_FILE_EDITOR_ID } from '@codingame/monaco-vscode-eea37658-2307-56a5-8ed0-b2752c7b7a50-common/vscode/vs/workbench/contrib/files/common/files';
|
|
46
45
|
import { TestingConfigKeys, getTestingConfiguration } from '../common/configuration.js';
|
|
47
46
|
import { TestCommandId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/testing/common/constants';
|
|
48
47
|
import { FileCoverage } from '@codingame/monaco-vscode-6845754f-e617-5ed9-8aaa-6ca3653a9532-common/vscode/vs/workbench/contrib/testing/common/testCoverage';
|
|
@@ -51,10 +50,13 @@ import { TestId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib
|
|
|
51
50
|
import { ITestService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/testing/common/testService.service';
|
|
52
51
|
import { DetailType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/testing/common/testTypes';
|
|
53
52
|
import { TestingContextKeys } from '../common/testingContextKeys.js';
|
|
53
|
+
import { labels, getLabelForItem } from './codeCoverageDisplayUtils.js';
|
|
54
|
+
import { testingCoverageMissingBranch, testingCoverageReport, testingFilterIcon, testingRerunIcon } from './icons.js';
|
|
55
|
+
import { ManagedTestCoverageBars } from './testCoverageBars.js';
|
|
54
56
|
|
|
55
57
|
const CLASS_HIT = 'coverage-deco-hit';
|
|
56
58
|
const CLASS_MISS = 'coverage-deco-miss';
|
|
57
|
-
const TOGGLE_INLINE_COMMAND_TEXT = ( localize(
|
|
59
|
+
const TOGGLE_INLINE_COMMAND_TEXT = ( localize(10198, 'Toggle Inline'));
|
|
58
60
|
const TOGGLE_INLINE_COMMAND_ID = 'testing.toggleInlineCoverage';
|
|
59
61
|
const BRANCH_MISS_INDICATOR_CHARS = 4;
|
|
60
62
|
let CodeCoverageDecorations = class CodeCoverageDecorations extends Disposable {
|
|
@@ -378,7 +380,7 @@ class CoverageDetailsModel {
|
|
|
378
380
|
if (detail.branches?.length) {
|
|
379
381
|
const covered = detail.branches.filter(b => !!b.count).length;
|
|
380
382
|
return ( new MarkdownString()).appendMarkdown(( localize(
|
|
381
|
-
|
|
383
|
+
10199,
|
|
382
384
|
'{0} of {1} of branches in {2} were covered.',
|
|
383
385
|
covered,
|
|
384
386
|
detail.branches.length,
|
|
@@ -394,13 +396,13 @@ class CoverageDetailsModel {
|
|
|
394
396
|
const { count, label } = detail.detail.branches[detail.branch];
|
|
395
397
|
const label2 = label ? wrapInBackticks(label) : `#${detail.branch + 1}`;
|
|
396
398
|
if (!count) {
|
|
397
|
-
return ( new MarkdownString()).appendMarkdown(( localize(
|
|
399
|
+
return ( new MarkdownString()).appendMarkdown(( localize(10200, 'Branch {0} in {1} was not covered.', label2, text)));
|
|
398
400
|
}
|
|
399
401
|
else if (count === true) {
|
|
400
|
-
return ( new MarkdownString()).appendMarkdown(( localize(
|
|
402
|
+
return ( new MarkdownString()).appendMarkdown(( localize(10201, 'Branch {0} in {1} was executed.', label2, text)));
|
|
401
403
|
}
|
|
402
404
|
else {
|
|
403
|
-
return ( new MarkdownString()).appendMarkdown(( localize(
|
|
405
|
+
return ( new MarkdownString()).appendMarkdown(( localize(10202, 'Branch {0} in {1} was executed {2} time(s).', label2, text, count)));
|
|
404
406
|
}
|
|
405
407
|
}
|
|
406
408
|
assertNever();
|
|
@@ -408,10 +410,10 @@ class CoverageDetailsModel {
|
|
|
408
410
|
}
|
|
409
411
|
function namedDetailLabel(name, detail) {
|
|
410
412
|
return ( new MarkdownString()).appendMarkdown(!detail.count
|
|
411
|
-
? ( localize(
|
|
413
|
+
? ( localize(10203, '`{0}` was not executed.', name))
|
|
412
414
|
: typeof detail.count === 'number'
|
|
413
|
-
? ( localize(
|
|
414
|
-
: ( localize(
|
|
415
|
+
? ( localize(10204, '`{0}` was executed {1} time(s).', name, detail.count))
|
|
416
|
+
: ( localize(10205, '`{0}` was executed.', name)));
|
|
415
417
|
}
|
|
416
418
|
function tidyLocation(location) {
|
|
417
419
|
if (location instanceof Position) {
|
|
@@ -508,8 +510,8 @@ let CoverageToolbarWidget = class CoverageToolbarWidget extends Disposable {
|
|
|
508
510
|
return;
|
|
509
511
|
}
|
|
510
512
|
const toggleAction = ( new ActionWithIcon('toggleInline', this.coverage.showInline.get()
|
|
511
|
-
? ( localize(
|
|
512
|
-
: ( localize(
|
|
513
|
+
? ( localize(10206, 'Hide Inline Coverage'))
|
|
514
|
+
: ( localize(10207, 'Show Inline Coverage')), testingCoverageReport, undefined, () => this.coverage.showInline.set(!this.coverage.showInline.get(), undefined)));
|
|
513
515
|
const kb = this.keybindingService.lookupKeybinding(TOGGLE_INLINE_COMMAND_ID);
|
|
514
516
|
if (kb) {
|
|
515
517
|
toggleAction.tooltip = `${TOGGLE_INLINE_COMMAND_TEXT} (${kb.getLabel()})`;
|
|
@@ -528,12 +530,12 @@ let CoverageToolbarWidget = class CoverageToolbarWidget extends Disposable {
|
|
|
528
530
|
}
|
|
529
531
|
else if (current.coverage.perTestData?.size) {
|
|
530
532
|
this.actionBar.push(( new ActionWithIcon('perTestFilter', ( localize(
|
|
531
|
-
|
|
533
|
+
10208,
|
|
532
534
|
"{0} test(s) ran code in this file",
|
|
533
535
|
current.coverage.perTestData.size
|
|
534
536
|
)), testingFilterIcon, undefined, () => this.commandService.executeCommand(TestCommandId.CoverageFilterToTestInEditor, this.current, this.editor))));
|
|
535
537
|
}
|
|
536
|
-
this.actionBar.push(( new ActionWithIcon('rerun', ( localize(
|
|
538
|
+
this.actionBar.push(( new ActionWithIcon('rerun', ( localize(10209, 'Rerun')), testingRerunIcon, !this.isRunning, () => this.rerunTest())));
|
|
537
539
|
}
|
|
538
540
|
show() {
|
|
539
541
|
if (this.registered) {
|
|
@@ -593,7 +595,7 @@ registerAction2(class ToggleInlineCoverage extends Action2 {
|
|
|
593
595
|
constructor() {
|
|
594
596
|
super({
|
|
595
597
|
id: TOGGLE_INLINE_COMMAND_ID,
|
|
596
|
-
title: ( localize2(
|
|
598
|
+
title: ( localize2(10210, "Toggle Inline Coverage")),
|
|
597
599
|
category: Categories.Test,
|
|
598
600
|
keybinding: {
|
|
599
601
|
weight: KeybindingWeight.WorkbenchContrib,
|
|
@@ -601,7 +603,7 @@ registerAction2(class ToggleInlineCoverage extends Action2 {
|
|
|
601
603
|
},
|
|
602
604
|
toggled: {
|
|
603
605
|
condition: TestingContextKeys.inlineCoverageEnabled,
|
|
604
|
-
title: ( localize(
|
|
606
|
+
title: ( localize(10211, "Hide Inline Coverage")),
|
|
605
607
|
},
|
|
606
608
|
icon: testingCoverageReport,
|
|
607
609
|
menu: [
|
|
@@ -619,9 +621,9 @@ registerAction2(class ToggleCoverageToolbar extends Action2 {
|
|
|
619
621
|
constructor() {
|
|
620
622
|
super({
|
|
621
623
|
id: TestCommandId.CoverageToggleToolbar,
|
|
622
|
-
title: ( localize2(
|
|
624
|
+
title: ( localize2(10212, "Test Coverage Toolbar")),
|
|
623
625
|
metadata: {
|
|
624
|
-
description: ( localize2(
|
|
626
|
+
description: ( localize2(10213, 'Toggle the sticky coverage bar in the editor.'))
|
|
625
627
|
},
|
|
626
628
|
category: Categories.Test,
|
|
627
629
|
toggled: {
|
|
@@ -644,7 +646,7 @@ registerAction2(class FilterCoverageToTestInEditor extends Action2 {
|
|
|
644
646
|
constructor() {
|
|
645
647
|
super({
|
|
646
648
|
id: TestCommandId.CoverageFilterToTestInEditor,
|
|
647
|
-
title: ( localize2(
|
|
649
|
+
title: ( localize2(10214, "Filter Coverage to Test")),
|
|
648
650
|
category: Categories.Test,
|
|
649
651
|
icon: Codicon.filter,
|
|
650
652
|
toggled: {
|
|
@@ -654,7 +656,7 @@ registerAction2(class FilterCoverageToTestInEditor extends Action2 {
|
|
|
654
656
|
menu: [
|
|
655
657
|
{
|
|
656
658
|
id: MenuId.EditorTitle,
|
|
657
|
-
when: ( ContextKeyExpr.and(TestingContextKeys.isTestCoverageOpen, ( TestingContextKeys.coverageToolbarEnabled.notEqualsTo(true)), TestingContextKeys.hasPerTestCoverage)),
|
|
659
|
+
when: ( ContextKeyExpr.and(TestingContextKeys.isTestCoverageOpen, ( TestingContextKeys.coverageToolbarEnabled.notEqualsTo(true)), TestingContextKeys.hasPerTestCoverage, ( ActiveEditorContext.isEqualTo(TEXT_FILE_EDITOR_ID)))),
|
|
658
660
|
group: 'navigation',
|
|
659
661
|
},
|
|
660
662
|
]
|
|
@@ -75,11 +75,11 @@ function getLabelForItem(result, testId, commonPrefixLen) {
|
|
|
75
75
|
}
|
|
76
76
|
var labels;
|
|
77
77
|
(function (labels) {
|
|
78
|
-
labels.showingFilterFor = (label) => ( localize(
|
|
79
|
-
labels.clickToChangeFiltering = ( localize(
|
|
80
|
-
labels.percentCoverage = (percent, precision) => ( localize(
|
|
81
|
-
labels.allTests = ( localize(
|
|
82
|
-
labels.pickShowCoverage = ( localize(
|
|
78
|
+
labels.showingFilterFor = (label) => ( localize(10215, "Showing \"{0}\"", label));
|
|
79
|
+
labels.clickToChangeFiltering = ( localize(10216, 'Click to view coverage for a single test'));
|
|
80
|
+
labels.percentCoverage = (percent, precision) => ( localize(10217, '{0} Coverage', displayPercent(percent, precision)));
|
|
81
|
+
labels.allTests = ( localize(10218, 'All tests'));
|
|
82
|
+
labels.pickShowCoverage = ( localize(10219, 'Pick a test to show coverage for'));
|
|
83
83
|
})(labels || (labels = {}));
|
|
84
84
|
|
|
85
85
|
export { calculateDisplayedStat, displayPercent, getCoverageColor, getLabelForItem, labels, percent };
|
|
@@ -7,37 +7,37 @@ import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/th
|
|
|
7
7
|
import { testStatesToIconColors, testStatesToRetiredIconColors, testingColorRunAction } from './theme.js';
|
|
8
8
|
import { TestResultState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/testing/common/testTypes';
|
|
9
9
|
|
|
10
|
-
const testingViewIcon = registerIcon('test-view-icon', Codicon.beaker, ( localize(
|
|
11
|
-
const testingResultsIcon = registerIcon('test-results-icon', Codicon.checklist, ( localize(
|
|
12
|
-
const testingRunIcon = registerIcon('testing-run-icon', Codicon.run, ( localize(
|
|
13
|
-
const testingRerunIcon = registerIcon('testing-rerun-icon', Codicon.debugRerun, ( localize(
|
|
14
|
-
const testingRunAllIcon = registerIcon('testing-run-all-icon', Codicon.runAll, ( localize(
|
|
15
|
-
const testingDebugAllIcon = registerIcon('testing-debug-all-icon', Codicon.debugAltSmall, ( localize(
|
|
16
|
-
const testingDebugIcon = registerIcon('testing-debug-icon', Codicon.debugAltSmall, ( localize(
|
|
17
|
-
const testingCoverageIcon = registerIcon('testing-coverage-icon', Codicon.runCoverage, ( localize(
|
|
18
|
-
const testingCoverageAllIcon = registerIcon('testing-coverage-all-icon', Codicon.runAllCoverage, ( localize(
|
|
19
|
-
const testingCancelIcon = registerIcon('testing-cancel-icon', Codicon.debugStop, ( localize(
|
|
20
|
-
const testingFilterIcon = registerIcon('testing-filter', Codicon.filter, ( localize(
|
|
21
|
-
const testingHiddenIcon = registerIcon('testing-hidden', Codicon.eyeClosed, ( localize(
|
|
22
|
-
registerIcon('testing-show-as-list-icon', Codicon.listTree, ( localize(
|
|
23
|
-
registerIcon('testing-show-as-list-icon', Codicon.listFlat, ( localize(
|
|
24
|
-
const testingUpdateProfiles = registerIcon('testing-update-profiles', Codicon.gear, ( localize(
|
|
25
|
-
const testingRefreshTests = registerIcon('testing-refresh-tests', Codicon.refresh, ( localize(
|
|
26
|
-
const testingTurnContinuousRunOn = registerIcon('testing-turn-continuous-run-on', Codicon.eye, ( localize(
|
|
27
|
-
const testingTurnContinuousRunOff = registerIcon('testing-turn-continuous-run-off', Codicon.eyeClosed, ( localize(
|
|
28
|
-
const testingContinuousIsOn = registerIcon('testing-continuous-is-on', Codicon.eye, ( localize(
|
|
29
|
-
const testingCancelRefreshTests = registerIcon('testing-cancel-refresh-tests', Codicon.stop, ( localize(
|
|
30
|
-
const testingCoverageReport = registerIcon('testing-coverage', Codicon.coverage, ( localize(
|
|
31
|
-
const testingWasCovered = registerIcon('testing-was-covered', Codicon.check, ( localize(
|
|
32
|
-
const testingCoverageMissingBranch = registerIcon('testing-missing-branch', Codicon.question, ( localize(
|
|
10
|
+
const testingViewIcon = registerIcon('test-view-icon', Codicon.beaker, ( localize(10220, 'View icon of the test view.')));
|
|
11
|
+
const testingResultsIcon = registerIcon('test-results-icon', Codicon.checklist, ( localize(10221, 'Icons for test results.')));
|
|
12
|
+
const testingRunIcon = registerIcon('testing-run-icon', Codicon.run, ( localize(10222, 'Icon of the "run test" action.')));
|
|
13
|
+
const testingRerunIcon = registerIcon('testing-rerun-icon', Codicon.debugRerun, ( localize(10223, 'Icon of the "rerun tests" action.')));
|
|
14
|
+
const testingRunAllIcon = registerIcon('testing-run-all-icon', Codicon.runAll, ( localize(10224, 'Icon of the "run all tests" action.')));
|
|
15
|
+
const testingDebugAllIcon = registerIcon('testing-debug-all-icon', Codicon.debugAltSmall, ( localize(10225, 'Icon of the "debug all tests" action.')));
|
|
16
|
+
const testingDebugIcon = registerIcon('testing-debug-icon', Codicon.debugAltSmall, ( localize(10226, 'Icon of the "debug test" action.')));
|
|
17
|
+
const testingCoverageIcon = registerIcon('testing-coverage-icon', Codicon.runCoverage, ( localize(10227, 'Icon of the "run test with coverage" action.')));
|
|
18
|
+
const testingCoverageAllIcon = registerIcon('testing-coverage-all-icon', Codicon.runAllCoverage, ( localize(10228, 'Icon of the "run all tests with coverage" action.')));
|
|
19
|
+
const testingCancelIcon = registerIcon('testing-cancel-icon', Codicon.debugStop, ( localize(10229, 'Icon to cancel ongoing test runs.')));
|
|
20
|
+
const testingFilterIcon = registerIcon('testing-filter', Codicon.filter, ( localize(10230, 'Icon for the \'Filter\' action in the testing view.')));
|
|
21
|
+
const testingHiddenIcon = registerIcon('testing-hidden', Codicon.eyeClosed, ( localize(10231, 'Icon shown beside hidden tests, when they\'ve been shown.')));
|
|
22
|
+
registerIcon('testing-show-as-list-icon', Codicon.listTree, ( localize(10232, 'Icon shown when the test explorer is disabled as a tree.')));
|
|
23
|
+
registerIcon('testing-show-as-list-icon', Codicon.listFlat, ( localize(10233, 'Icon shown when the test explorer is disabled as a list.')));
|
|
24
|
+
const testingUpdateProfiles = registerIcon('testing-update-profiles', Codicon.gear, ( localize(10234, 'Icon shown to update test profiles.')));
|
|
25
|
+
const testingRefreshTests = registerIcon('testing-refresh-tests', Codicon.refresh, ( localize(10235, 'Icon on the button to refresh tests.')));
|
|
26
|
+
const testingTurnContinuousRunOn = registerIcon('testing-turn-continuous-run-on', Codicon.eye, ( localize(10236, 'Icon to turn continuous test runs on.')));
|
|
27
|
+
const testingTurnContinuousRunOff = registerIcon('testing-turn-continuous-run-off', Codicon.eyeClosed, ( localize(10237, 'Icon to turn continuous test runs off.')));
|
|
28
|
+
const testingContinuousIsOn = registerIcon('testing-continuous-is-on', Codicon.eye, ( localize(10238, 'Icon when continuous run is on for a test ite,.')));
|
|
29
|
+
const testingCancelRefreshTests = registerIcon('testing-cancel-refresh-tests', Codicon.stop, ( localize(10239, 'Icon on the button to cancel refreshing tests.')));
|
|
30
|
+
const testingCoverageReport = registerIcon('testing-coverage', Codicon.coverage, ( localize(10240, 'Icon representing test coverage')));
|
|
31
|
+
const testingWasCovered = registerIcon('testing-was-covered', Codicon.check, ( localize(10241, 'Icon representing that an element was covered')));
|
|
32
|
+
const testingCoverageMissingBranch = registerIcon('testing-missing-branch', Codicon.question, ( localize(10242, 'Icon representing a uncovered block without a range')));
|
|
33
33
|
const testingStatesToIcons = ( new Map([
|
|
34
|
-
[TestResultState.Errored, registerIcon('testing-error-icon', Codicon.issues, ( localize(
|
|
35
|
-
[TestResultState.Failed, registerIcon('testing-failed-icon', Codicon.error, ( localize(
|
|
36
|
-
[TestResultState.Passed, registerIcon('testing-passed-icon', Codicon.pass, ( localize(
|
|
37
|
-
[TestResultState.Queued, registerIcon('testing-queued-icon', Codicon.history, ( localize(
|
|
34
|
+
[TestResultState.Errored, registerIcon('testing-error-icon', Codicon.issues, ( localize(10243, 'Icon shown for tests that have an error.')))],
|
|
35
|
+
[TestResultState.Failed, registerIcon('testing-failed-icon', Codicon.error, ( localize(10244, 'Icon shown for tests that failed.')))],
|
|
36
|
+
[TestResultState.Passed, registerIcon('testing-passed-icon', Codicon.pass, ( localize(10245, 'Icon shown for tests that passed.')))],
|
|
37
|
+
[TestResultState.Queued, registerIcon('testing-queued-icon', Codicon.history, ( localize(10246, 'Icon shown for tests that are queued.')))],
|
|
38
38
|
[TestResultState.Running, spinningLoading],
|
|
39
|
-
[TestResultState.Skipped, registerIcon('testing-skipped-icon', Codicon.debugStepOver, ( localize(
|
|
40
|
-
[TestResultState.Unset, registerIcon('testing-unset-icon', Codicon.circleOutline, ( localize(
|
|
39
|
+
[TestResultState.Skipped, registerIcon('testing-skipped-icon', Codicon.debugStepOver, ( localize(10247, 'Icon shown for tests that are skipped.')))],
|
|
40
|
+
[TestResultState.Unset, registerIcon('testing-unset-icon', Codicon.circleOutline, ( localize(10248, 'Icon shown for tests that are in an unset state.')))],
|
|
41
41
|
]));
|
|
42
42
|
registerThemingParticipant((theme, collector) => {
|
|
43
43
|
for (const [state, icon] of testingStatesToIcons.entries()) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import n from '@codingame/monaco-vscode-api/external/rollup-plugin-styles/dist/runtime/inject-css';
|
|
2
2
|
|
|
3
|
-
var css = ".monaco-workbench{.codicon-testing-error-icon{color:var(--vscode-testing-iconErrored)}.codicon-testing-failed-icon{color:var(--vscode-testing-iconFailed)}.codicon-testing-passed-icon{color:var(--vscode-testing-iconPassed)}.codicon-testing-queued-icon{color:var(--vscode-testing-iconQueued)}.codicon-testing-skipped-icon{color:var(--vscode-testing-iconSkipped)}.codicon-testing-unset-icon{color:var(--vscode-testing-iconUnset)}}.test-explorer{display:flex;flex-direction:column}.test-explorer>.test-explorer-tree{flex-grow:1;height:0;position:relative}.test-coverage-list-item .name,.test-coverage-list-item-label,.test-explorer .test-item .label,.test-output-peek-tree .test-peek-item .name{flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:0;.monaco-list.horizontal-scrolling &{overflow:visible;width:auto}}.test-explorer .test-item .label .codicon,.test-output-peek-tree .test-peek-item .name .codicon{font-size:1em;margin:0 .125em;transform:scale(1.25);vertical-align:middle}.test-explorer .test-item,.test-output-peek-tree .test-peek-item{align-items:center;display:flex}.test-output-peek-tree{border-left:1px solid var(--vscode-panelSection-border);color:var(--vscode-editor-foreground)}.test-explorer .monaco-list-row .codicon-testing-hidden,.test-explorer .monaco-list-row .monaco-action-bar,.test-output-peek-tree .monaco-list-row .monaco-action-bar{display:none;flex-shrink:0;margin-right:.8em}.test-explorer .monaco-list-row .monaco-action-bar .codicon-testing-continuous-is-on{background:var(--vscode-inputOption-activeBackground);border-color:var(--vscode-inputOption-activeBorder);border:1px solid var(--vscode-inputOption-activeBorder);border-radius:3px;color:var(--vscode-inputOption-activeForeground)}.test-explorer .monaco-list-row:not(.focused,:hover) .monaco-action-bar.testing-is-continuous-run .action-item{display:none}.test-explorer .monaco-list-row .monaco-action-bar.testing-is-continuous-run .action-item:last-child{display:block!important}.test-explorer .monaco-list-row .monaco-action-bar.testing-is-continuous-run,.test-explorer .monaco-list-row.focused .monaco-action-bar,.test-explorer .monaco-list-row:hover .monaco-action-bar,.test-output-peek-tree .monaco-list-row.focused .monaco-action-bar,.test-output-peek-tree .monaco-list-row:hover .monaco-action-bar{display:initial}.test-explorer .monaco-list-row .test-is-hidden .codicon-testing-hidden{display:block;margin-right:9px}.test-explorer .monaco-list-row.focused .codicon-testing-hidden,.test-explorer .monaco-list-row:hover .codicon-testing-hidden{display:none}.test-explorer .monaco-list-row .error{background:var(--vscode-inputValidation-errorBackground);border-radius:2px;font-size:12px;height:17px;line-height:17px;margin:3px 12px 3px 3px;outline:1px solid var(--vscode-inputValidation-errorBorder);overflow:hidden;padding:2px 4px}.test-explorer .monaco-list-row .error p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.test-explorer .monaco-list-row .error a{color:var(--vscode-textLink-foreground)}.test-explorer .monaco-list-row .error a:hover{color:var(--vscode-textLink-activeForeground)}.test-explorer .computed-state,.test-output-peek-tree .computed-state{margin-right:.25em}.test-explorer .test-is-hidden{opacity:.8}.test-explorer .result-summary-container{box-sizing:border-box;font-variant-numeric:tabular-nums;height:27px;padding:0 12px 8px}.test-explorer .result-summary{align-items:center;display:flex;gap:2px}.test-explorer .result-summary>span{flex-grow:1}.monaco-workbench .test-explorer .monaco-action-bar .action-item>.action-label{margin-right:2px;padding:1px 2px}.monaco-workbench .part>.title>.title-actions .action-label.codicon-testing-autorun:after{border-radius:100%;content:\"\";display:none;height:.4em;left:50%;margin:.1em 0 0 .05em;position:absolute;top:50%;width:.4em}.monaco-workbench .part>.title>.title-actions .action-label.codicon-testing-autorun.checked:after{display:block}.codicon-testing-loading-icon:before{animation:codicon-spin 1.25s steps(30) infinite}.testing-no-test-placeholder{display:none;left:0;padding:0 20px;position:absolute;right:0;top:0;z-index:1}.testing-no-test-placeholder.visible{display:block}.monaco-editor .zone-widget.test-output-peek .zone-widget-container.peekview-widget{border-bottom-width:2px;border-top-width:2px}.monaco-editor .zone-widget.test-output-peek .type-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .zone-widget.test-output-peek .monaco-editor .inputarea.ime-input,.monaco-editor .zone-widget.test-output-peek .monaco-editor .monaco-editor-background,.monaco-editor .zone-widget.test-output-peek .test-output-peek-message-container{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .zone-widget.test-output-peek .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.test-output-peek-message-container{overflow:hidden}.test-output-peek-message-container .floating-click-widget{bottom:10px;position:absolute;right:20px}.test-output-peek-message-container,.test-output-peek-tree{height:100%}.test-output-peek-message-container .preview-text{line-height:normal;padding:8px 12px 8px 20px;white-space:normal}.test-output-peek-message-container .preview-text p:first-child{margin-top:0}.test-output-peek-message-container .preview-text p:last-child{margin-bottom:0}.test-output-peek-message-container .preview-text a{cursor:pointer}.testing-followup-action{align-items:center;display:flex;gap:14px;line-height:25px;overflow:hidden;pointer-events:none;&.animated{animation:fadeIn .15s ease-out}>a{align-items:center;cursor:pointer;display:flex;flex-shrink:0;gap:4px;pointer-events:auto;width:fit-content;&,.codicon{color:var(--vscode-textLink-foreground)}&:hover{color:var(--vscode-textLink-activeForeground)}&[aria-disabled=true]{color:inherit;cursor:default;.codicon{color:inherit}}}}.test-output-call-stack{height:100%}.monaco-action-bar.testing-filter-action-bar{flex-shrink:0;height:auto;margin:4px 12px}.testing-filter-action-item{align-items:center;display:flex!important;flex-grow:1;max-width:400px}.testing-filter-action-item>.monaco-action-bar .testing-filter-button.checked{background-color:var(--vscode-inputOption-activeBackground);border-color:var(--vscode-inputOption-activeBorder);color:var(--vscode-inputOption-activeForeground)}.testing-filter-action-bar .testing-filter-action-item{max-width:none}.testing-filter-action-item .testing-filter-wrapper{flex-grow:1}.testing-filter-action-item .testing-filter-wrapper input{padding-right:30px!important}.testing-filter-action-item .monaco-action-bar{align-items:center;bottom:0;display:flex;position:absolute;right:3px;top:0}.monaco-editor .testing-run-glyph{cursor:pointer}.testing-diff-title-widget{display:inline-block;font-size:12px;line-height:19px;overflow:hidden;padding-right:6px;text-overflow:ellipsis;white-space:nowrap}.test-message-inline-content{font-family:var(--testMessageDecorationFontFamily);font-size:var(--testMessageDecorationFontSize)}.test-message-inline-content-clickable{cursor:pointer}.test-label-description{font-size:.9em;margin-left:.5em;opacity:.7;white-space:pre}.testing-diff-lens-widget{color:var(--vscode-editorCodeLens-foreground)}.test-message-inline-content{margin-left:4em;+.test-message-inline-content{margin-left:0;&:before{display:none}}}.test-message-inline-content-s1{color:var(--vscode-testing-message-info-decorationForeground)!important}.monaco-workbench .test-error-content-widget{z-index:0}.monaco-workbench .test-error-content-widget .inner{align-items:center;background:var(--vscode-testing-message-error-badgeBackground);border:1px solid var(--vscode-testing-message-error-badgeBorder);border-bottom-right-radius:2px;border-left:none;border-top-right-radius:2px;box-sizing:border-box;color:var(--vscode-testing-message-error-badgeForeground)!important;cursor:pointer;display:flex!important;font-size:11px;gap:3px;margin-left:20px;padding-right:3px;position:relative;user-select:none;&.is-current{display:none!important}.codicon.codicon-testing-failed-icon{color:currentColor!important;font-size:11px;margin:1px 0 0 -4px;z-index:1}.content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.arrow svg{fill:var(--vscode-testing-message-error-badgeBackground);stroke-width:.71px;stroke:var(--vscode-testing-message-error-badgeBorder);height:calc(100% + 2px);left:-10px;position:absolute;top:-1px;width:15px;z-index:-1}}.monaco-editor .testing-inline-message-severity-0{background:var(--vscode-testing-message-error-lineBackground)!important}.monaco-editor .testing-inline-message-severity-1{background:var(--vscode-testing-message-info-lineBackground)!important}.coverage-view-is-filtered>.pane-header>.actions{display:block!important}.test-coverage-bars,.test-coverage-list-item{align-items:center;display:flex}.test-coverage-bars{font-size:11px;gap:4px;margin-right:.8em}.test-coverage-bars .bar{border:1px solid;border-radius:2px;height:8px;overflow:hidden;position:relative}.test-coverage-bars .bar:before{background:currentColor;content:\"\";height:100%;opacity:.7;position:absolute;width:var(--test-bar-width)}.test-coverage-list-item .icon{margin-right:.2em}.test-coverage-list-item.not-covered .name{opacity:.7}.coverage-summary-widget{background:var(--vscode-editor-background);box-shadow:var(--vscode-editorStickyScroll-shadow) 0 3px 2px -2px;color:var(--vscode-editor-foreground);left:0;width:100%;z-index:1;>div{align-items:center;display:flex;height:25px;padding:0 22px}.btn{margin:0 4px;padding:0 4px;position:relative;&:first-child{margin-left:0}&:last-child{margin-right:0}}.action-label,.stat{margin:0 3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-label{align-items:center;display:flex;font-size:13px;padding:0 4px;.codicon{margin-right:4px}}}.test-coverage-tree-per-test-switcher{background-color:var(--vscode-dropdown-background);border:1px solid var(--vscode-dropdown-border);color:var(--vscode-dropdown-foreground);cursor:pointer;display:flex;line-height:20px;margin:3px 22px 3px 0;max-width:calc(100% - 44px);padding:0 6px;width:fit-content;span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}&:after{content:\"\";content:var(--vscode-icon-chevron-right-content);font-family:var(--vscode-icon-chevron-right-font-family);font-size:18px;padding-left:22px}}.explorer-item-with-test-coverage{display:flex}.explorer-item-with-test-coverage .explorer-item{flex-grow:1}.explorer-item-with-test-coverage .monaco-icon-label:after{margin-right:12px}.coverage-deco-gutter{z-index:0}.coverage-deco-gutter:before{content:\"\";inset:0;position:absolute;z-index:-1}.coverage-deco-gutter.coverage-deco-hit:before{background:var(--vscode-testing-coveredGutterBackground);border-color:var(--vscode-testing-coveredGutterBackground)}.coverage-deco-gutter.coverage-deco-miss:before{background:var(--vscode-testing-uncoveredGutterBackground);border-color:var(--vscode-testing-uncoveredGutterBackground)}.hc-black .coverage-deco-gutter:before,.hc-light .coverage-deco-gutter:before{background:none;border-style:solid;border-width:3px 0 3px 5px}.coverage-deco-gutter.coverage-deco-miss.coverage-deco-hit:before{background-color:transparent;background-image:linear-gradient(45deg,var(--vscode-testing-coveredGutterBackground) 25%,var(--vscode-testing-uncoveredGutterBackground) 25%,var(--vscode-testing-uncoveredGutterBackground) 50%,var(--vscode-testing-coveredGutterBackground) 50%,75%,var(--vscode-testing-uncoveredGutterBackground) 75%,var(--vscode-testing-uncoveredGutterBackground) 100%);background-size:6px 6px}.coverage-deco-inline{outline-offset:-1px}.monaco-editor{.coverage-deco-inline.coverage-deco-hit{background:var(--vscode-testing-coveredBackground);outline:1px solid var(--vscode-testing-coveredBorder)}.coverage-deco-inline.coverage-deco-miss{background:var(--vscode-testing-uncoveredBackground);outline:1px solid var(--vscode-testing-uncoveredBorder)}.hc-black .coverage-deco-inline.coverage-deco-hit,.hc-light .coverage-deco-inline.coverage-deco-hit{outline-style:dashed}.coverage-deco-branch-miss-indicator{display:inline-block;font:inherit!important;height:100%;position:relative;width:4ch}.coverage-deco-branch-miss-indicator:before{border:1px solid;border-radius:2px;font:normal normal normal calc(var(--vscode-testing-coverage-lineHeight)/2)/1 codicon;left:50%;padding:calc(var(--vscode-testing-coverage-lineHeight)/10);position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.coverage-deco-inline-count{background:var(--vscode-testing-coverCountBadgeBackground);border-bottom-left-radius:2px;border-top-left-radius:2px;color:var(--vscode-testing-coverCountBadgeForeground);font-size:.7em;margin:0 .7em 0 .4em;padding:.2em 0 .2em .2em;position:relative;&:after{background-image:linear-gradient(to bottom left,transparent 50%,var(--vscode-testing-coverCountBadgeBackground) 0),linear-gradient(to bottom right,var(--vscode-testing-coverCountBadgeBackground) 50%,transparent 0);background-position:top,bottom;background-repeat:no-repeat;background-size:100% 50%;bottom:0;content:\"\";display:block;left:100%;position:absolute;top:0;width:.5em}}}";
|
|
3
|
+
var css = ".monaco-workbench{.codicon-testing-error-icon{color:var(--vscode-testing-iconErrored)}.codicon-testing-failed-icon{color:var(--vscode-testing-iconFailed)}.codicon-testing-passed-icon{color:var(--vscode-testing-iconPassed)}.codicon-testing-queued-icon{color:var(--vscode-testing-iconQueued)}.codicon-testing-skipped-icon{color:var(--vscode-testing-iconSkipped)}.codicon-testing-unset-icon{color:var(--vscode-testing-iconUnset)}}.test-explorer{display:flex;flex-direction:column}.test-explorer>.test-explorer-tree{flex-grow:1;height:0;position:relative}.testing-stdtree-container{align-items:center;display:flex;.label{flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:0;.codicon{font-size:1em;margin:0 .125em;transform:scale(1.25);vertical-align:middle}.monaco-list.horizontal-scrolling &{overflow:visible;width:auto}}.monaco-action-bar{display:none;flex-shrink:0;margin-right:.8em}&.focused,&:hover{.monaco-action-bar{display:initial}}}.test-output-peek-tree{border-left:1px solid var(--vscode-panelSection-border);color:var(--vscode-editor-foreground)}.test-explorer .monaco-list-row .codicon-testing-hidden{display:none;flex-shrink:0;margin-right:.8em}.test-explorer .monaco-list-row .monaco-action-bar.testing-is-continuous-run{display:initial}.test-explorer .monaco-list-row .monaco-action-bar .codicon-testing-continuous-is-on{background:var(--vscode-inputOption-activeBackground);border-color:var(--vscode-inputOption-activeBorder);border:1px solid var(--vscode-inputOption-activeBorder);border-radius:3px;color:var(--vscode-inputOption-activeForeground)}.test-explorer .monaco-list-row:not(.focused,:hover) .monaco-action-bar.testing-is-continuous-run .action-item{display:none}.test-explorer .monaco-list-row .monaco-action-bar.testing-is-continuous-run .action-item:last-child{display:block!important}.test-explorer .monaco-list-row .test-is-hidden .codicon-testing-hidden{display:block;margin-right:9px}.test-explorer .monaco-list-row.focused .codicon-testing-hidden,.test-explorer .monaco-list-row:hover .codicon-testing-hidden{display:none}.test-explorer .monaco-list-row .error{background:var(--vscode-inputValidation-errorBackground);border-radius:2px;font-size:12px;height:17px;line-height:17px;margin:3px 12px 3px 3px;outline:1px solid var(--vscode-inputValidation-errorBorder);overflow:hidden;padding:2px 4px}.test-explorer .monaco-list-row .error p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.test-explorer .monaco-list-row .error a{color:var(--vscode-textLink-foreground)}.test-explorer .monaco-list-row .error a:hover{color:var(--vscode-textLink-activeForeground)}.test-explorer .computed-state,.test-output-peek-tree .computed-state{margin-right:.25em}.test-explorer .test-is-hidden{opacity:.8}.test-explorer .result-summary-container{box-sizing:border-box;font-variant-numeric:tabular-nums;height:27px;padding:0 12px 8px}.test-explorer .result-summary{align-items:center;display:flex;gap:2px}.test-explorer .result-summary>span{flex-grow:1}.monaco-workbench .test-explorer .monaco-action-bar .action-item>.action-label{margin-right:2px;padding:1px 2px}.monaco-workbench .part>.title>.title-actions .action-label.codicon-testing-autorun:after{border-radius:100%;content:\"\";display:none;height:.4em;left:50%;margin:.1em 0 0 .05em;position:absolute;top:50%;width:.4em}.monaco-workbench .part>.title>.title-actions .action-label.codicon-testing-autorun.checked:after{display:block}.codicon-testing-loading-icon:before{animation:codicon-spin 1.25s steps(30) infinite}.testing-no-test-placeholder{display:none;left:0;padding:0 20px;position:absolute;right:0;top:0;z-index:1}.testing-no-test-placeholder.visible{display:block}.monaco-editor .zone-widget.test-output-peek .zone-widget-container.peekview-widget{border-bottom-width:2px;border-top-width:2px}.monaco-editor .zone-widget.test-output-peek .type-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .zone-widget.test-output-peek .monaco-editor .inputarea.ime-input,.monaco-editor .zone-widget.test-output-peek .monaco-editor .monaco-editor-background,.monaco-editor .zone-widget.test-output-peek .test-output-peek-message-container{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .zone-widget.test-output-peek .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.test-output-peek-message-container{overflow:hidden}.test-output-peek-message-container .floating-click-widget{bottom:10px;position:absolute;right:20px}.test-output-peek-message-container,.test-output-peek-tree{height:100%}.test-output-peek-message-container .preview-text{line-height:normal;padding:8px 12px 8px 20px;white-space:normal}.test-output-peek-message-container .preview-text p:first-child{margin-top:0}.test-output-peek-message-container .preview-text p:last-child{margin-bottom:0}.test-output-peek-message-container .preview-text a{cursor:pointer}.testing-followup-action{align-items:center;display:flex;gap:14px;line-height:25px;overflow:hidden;pointer-events:none;&.animated{animation:fadeIn .15s ease-out}>a{align-items:center;cursor:pointer;display:flex;flex-shrink:0;gap:4px;pointer-events:auto;width:fit-content;&,.codicon{color:var(--vscode-textLink-foreground)}&:hover{color:var(--vscode-textLink-activeForeground)}&[aria-disabled=true]{color:inherit;cursor:default;.codicon{color:inherit}}}}.test-output-call-stack{height:100%}.monaco-action-bar.testing-filter-action-bar{flex-shrink:0;height:auto;margin:4px 12px}.testing-filter-action-item{align-items:center;display:flex!important;flex-grow:1;max-width:400px}.testing-filter-action-item>.monaco-action-bar .testing-filter-button.checked{background-color:var(--vscode-inputOption-activeBackground);border-color:var(--vscode-inputOption-activeBorder);color:var(--vscode-inputOption-activeForeground)}.testing-filter-action-bar .testing-filter-action-item{max-width:none}.testing-filter-action-item .testing-filter-wrapper{flex-grow:1}.testing-filter-action-item .testing-filter-wrapper input{padding-right:30px!important}.testing-filter-action-item .monaco-action-bar{align-items:center;bottom:0;display:flex;position:absolute;right:3px;top:0}.monaco-editor .testing-run-glyph{cursor:pointer}.testing-diff-title-widget{display:inline-block;font-size:12px;line-height:19px;overflow:hidden;padding-right:6px;text-overflow:ellipsis;white-space:nowrap}.test-message-inline-content{font-family:var(--testMessageDecorationFontFamily);font-size:var(--testMessageDecorationFontSize)}.test-message-inline-content-clickable{cursor:pointer}.test-label-description{font-size:.9em;margin-left:.5em;opacity:.7;white-space:pre}.testing-diff-lens-widget{color:var(--vscode-editorCodeLens-foreground)}.test-message-inline-content{margin-left:4em;+.test-message-inline-content{margin-left:0;&:before{display:none}}}.test-message-inline-content-s1{color:var(--vscode-testing-message-info-decorationForeground)!important}.monaco-workbench .test-error-content-widget{z-index:0}.monaco-workbench .test-error-content-widget .inner{align-items:center;border:1px solid var(--vscode-testing-message-error-badgeBorder);border-bottom-right-radius:2px;border-left:none;border-top-right-radius:2px;box-sizing:border-box;color:var(--vscode-testing-message-error-badgeForeground)!important;cursor:pointer;display:flex!important;font-size:11px;gap:3px;margin-left:20px;padding-right:3px;position:relative;user-select:none;&.is-current{display:none!important}.codicon.codicon-testing-failed-icon{color:currentColor!important;font-size:11px;margin:1px 0 0 -4px;z-index:1}.content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.arrow svg{stroke-width:.71px;stroke:var(--vscode-testing-message-error-badgeBorder);height:calc(100% + 2px);left:-10px;position:absolute;top:-1px;width:15px;z-index:-1}}.monaco-editor .testing-inline-message-severity-0{background:var(--vscode-testing-message-error-lineBackground)!important}.monaco-editor .testing-inline-message-severity-1{background:var(--vscode-testing-message-info-lineBackground)!important}.test-coverage-bars{align-items:center;display:flex;font-size:11px;gap:4px;margin-right:12px}.test-coverage-bars .bar{border:1px solid;border-radius:2px;height:8px;overflow:hidden;position:relative}.test-coverage-bars .bar:before{background:currentColor;content:\"\";height:100%;opacity:.7;position:absolute;width:var(--test-bar-width)}.test-coverage-list-item .icon{margin-right:.2em}.test-coverage-list-item.not-covered .name{opacity:.7}.coverage-summary-widget{background:var(--vscode-editor-background);box-shadow:var(--vscode-editorStickyScroll-shadow) 0 3px 2px -2px;color:var(--vscode-editor-foreground);left:0;width:100%;z-index:1;>div{align-items:center;display:flex;height:25px;padding:0 22px}.btn{margin:0 4px;padding:0 4px;position:relative;&:first-child{margin-left:0}&:last-child{margin-right:0}}.action-label,.stat{margin:0 3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-label{align-items:center;display:flex;font-size:13px;padding:0 4px;.codicon{margin-right:4px}}}.test-coverage-tree-per-test-switcher{background-color:var(--vscode-dropdown-background);border:1px solid var(--vscode-dropdown-border);color:var(--vscode-dropdown-foreground);cursor:pointer;display:flex;line-height:20px;margin:3px 22px 3px 0;max-width:calc(100% - 44px);padding:0 6px;width:fit-content;span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}&:after{content:\"\";content:var(--vscode-icon-chevron-right-content);font-family:var(--vscode-icon-chevron-right-font-family);font-size:18px;padding-left:22px}}.explorer-item-with-test-coverage{display:flex}.explorer-item-with-test-coverage .explorer-item{flex-grow:1}.explorer-item-with-test-coverage .monaco-icon-label:after{margin-right:12px}.coverage-deco-gutter{z-index:0}.coverage-deco-gutter:before{content:\"\";inset:0;position:absolute;z-index:-1}.coverage-deco-gutter.coverage-deco-hit:before{background:var(--vscode-testing-coveredGutterBackground);border-color:var(--vscode-testing-coveredGutterBackground)}.coverage-deco-gutter.coverage-deco-miss:before{background:var(--vscode-testing-uncoveredGutterBackground);border-color:var(--vscode-testing-uncoveredGutterBackground)}.hc-black .coverage-deco-gutter:before,.hc-light .coverage-deco-gutter:before{background:none;border-style:solid;border-width:3px 0 3px 5px}.coverage-deco-gutter.coverage-deco-miss.coverage-deco-hit:before{background-color:transparent;background-image:linear-gradient(45deg,var(--vscode-testing-coveredGutterBackground) 25%,var(--vscode-testing-uncoveredGutterBackground) 25%,var(--vscode-testing-uncoveredGutterBackground) 50%,var(--vscode-testing-coveredGutterBackground) 50%,75%,var(--vscode-testing-uncoveredGutterBackground) 75%,var(--vscode-testing-uncoveredGutterBackground) 100%);background-size:6px 6px}.coverage-deco-inline{outline-offset:-1px}.monaco-editor{.coverage-deco-inline.coverage-deco-hit{background:var(--vscode-testing-coveredBackground);outline:1px solid var(--vscode-testing-coveredBorder)}.coverage-deco-inline.coverage-deco-miss{background:var(--vscode-testing-uncoveredBackground);outline:1px solid var(--vscode-testing-uncoveredBorder)}.hc-black .coverage-deco-inline.coverage-deco-hit,.hc-light .coverage-deco-inline.coverage-deco-hit{outline-style:dashed}.coverage-deco-branch-miss-indicator{display:inline-block;font:inherit!important;height:100%;position:relative;width:4ch}.coverage-deco-branch-miss-indicator:before{border:1px solid;border-radius:2px;font:normal normal normal calc(var(--vscode-testing-coverage-lineHeight)/2)/1 codicon;left:50%;padding:calc(var(--vscode-testing-coverage-lineHeight)/10);position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.coverage-deco-inline-count{background:var(--vscode-testing-coverCountBadgeBackground);border-bottom-left-radius:2px;border-top-left-radius:2px;color:var(--vscode-testing-coverCountBadgeForeground);font-size:.7em;margin:0 .7em 0 .4em;padding:.2em 0 .2em .2em;position:relative;&:after{background-image:linear-gradient(to bottom left,transparent 50%,var(--vscode-testing-coverCountBadgeBackground) 0),linear-gradient(to bottom right,var(--vscode-testing-coverCountBadgeBackground) 50%,transparent 0);background-position:top,bottom;background-repeat:no-repeat;background-size:100% 50%;bottom:0;content:\"\";display:block;left:100%;position:absolute;top:0;width:.5em}}}";
|
|
4
4
|
n(css,{});
|
|
5
5
|
|
|
6
6
|
export { css, css as default };
|
|
@@ -3,7 +3,7 @@ import { ITransaction } from "@codingame/monaco-vscode-api/vscode/vs/base/common
|
|
|
3
3
|
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
4
4
|
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
5
5
|
import { IHoverService } from "@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service";
|
|
6
|
-
import { IExplorerFileContribution } from "@codingame/monaco-vscode-
|
|
6
|
+
import { IExplorerFileContribution } from "@codingame/monaco-vscode-eea37658-2307-56a5-8ed0-b2752c7b7a50-common/vscode/vs/workbench/contrib/files/browser/explorerFileContrib";
|
|
7
7
|
import { AbstractFileCoverage } from "@codingame/monaco-vscode-6845754f-e617-5ed9-8aaa-6ca3653a9532-common/vscode/vs/workbench/contrib/testing/common/testCoverage";
|
|
8
8
|
import { ITestCoverageService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/testing/common/testCoverageService.service";
|
|
9
9
|
export interface TestCoverageBarsOptions {
|
|
@@ -17,7 +17,7 @@ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
|
17
17
|
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
18
18
|
import { IHoverService } from '@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service';
|
|
19
19
|
import { Registry } from '@codingame/monaco-vscode-api/vscode/vs/platform/registry/common/platform';
|
|
20
|
-
import { ExplorerExtensions } from '@codingame/monaco-vscode-
|
|
20
|
+
import { ExplorerExtensions } from '@codingame/monaco-vscode-eea37658-2307-56a5-8ed0-b2752c7b7a50-common/vscode/vs/workbench/contrib/files/browser/explorerFileContrib';
|
|
21
21
|
import { calculateDisplayedStat, displayPercent, percent, getCoverageColor } from './codeCoverageDisplayUtils.js';
|
|
22
22
|
import { TestingConfigKeys, getTestingConfiguration, observeTestingConfiguration } from '../common/configuration.js';
|
|
23
23
|
import { ITestCoverageService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/testing/common/testCoverageService.service';
|
|
@@ -130,21 +130,21 @@ const renderBar = (bar, pct, isZero, thresholds) => {
|
|
|
130
130
|
};
|
|
131
131
|
const nf = new Intl.NumberFormat();
|
|
132
132
|
const stmtCoverageText = (coverage) => ( localize(
|
|
133
|
-
|
|
133
|
+
10249,
|
|
134
134
|
'{0}/{1} statements covered ({2})',
|
|
135
135
|
nf.format(coverage.statement.covered),
|
|
136
136
|
nf.format(coverage.statement.total),
|
|
137
137
|
displayPercent(percent(coverage.statement))
|
|
138
138
|
));
|
|
139
139
|
const fnCoverageText = (coverage) => coverage.declaration && ( localize(
|
|
140
|
-
|
|
140
|
+
10250,
|
|
141
141
|
'{0}/{1} functions covered ({2})',
|
|
142
142
|
nf.format(coverage.declaration.covered),
|
|
143
143
|
nf.format(coverage.declaration.total),
|
|
144
144
|
displayPercent(percent(coverage.declaration))
|
|
145
145
|
));
|
|
146
146
|
const branchCoverageText = (coverage) => coverage.branch && ( localize(
|
|
147
|
-
|
|
147
|
+
10251,
|
|
148
148
|
'{0}/{1} branches covered ({2})',
|
|
149
149
|
nf.format(coverage.branch.covered),
|
|
150
150
|
nf.format(coverage.branch.total),
|