@opensumi/ide-testing 2.21.13-rc-1673418254.0 → 2.21.13
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/components/testing.explorer.tree.d.ts.map +1 -1
- package/lib/browser/components/testing.explorer.tree.js +5 -7
- package/lib/browser/components/testing.explorer.tree.js.map +1 -1
- package/lib/browser/components/testing.view.js +1 -1
- package/lib/browser/components/testing.view.js.map +1 -1
- package/lib/browser/icons/icons.d.ts +0 -1
- package/lib/browser/icons/icons.d.ts.map +1 -1
- package/lib/browser/icons/icons.js +14 -15
- package/lib/browser/icons/icons.js.map +1 -1
- package/lib/browser/index.js.map +1 -1
- package/lib/browser/outputPeek/test-output-peek.js +9 -9
- package/lib/browser/outputPeek/test-output-peek.js.map +1 -1
- package/lib/browser/outputPeek/test-peek-message.service.js.map +1 -1
- package/lib/browser/outputPeek/test-peek-opener.service.js +1 -1
- package/lib/browser/outputPeek/test-peek-opener.service.js.map +1 -1
- package/lib/browser/outputPeek/test-peek-widget.js +1 -1
- package/lib/browser/outputPeek/test-peek-widget.js.map +1 -1
- package/lib/browser/outputPeek/test-tree-container.js +2 -2
- package/lib/browser/outputPeek/test-tree-container.js.map +1 -1
- package/lib/browser/test-contextkey.service.js.map +1 -1
- package/lib/browser/test-decorations.js +19 -19
- package/lib/browser/test-decorations.js.map +1 -1
- package/lib/browser/test-profile.service.js.map +1 -1
- package/lib/browser/test-tree-view.model.d.ts +0 -1
- package/lib/browser/test-tree-view.model.d.ts.map +1 -1
- package/lib/browser/test-tree-view.model.js +10 -13
- package/lib/browser/test-tree-view.model.js.map +1 -1
- package/lib/browser/test.result.service.d.ts +1 -1
- package/lib/browser/test.result.service.d.ts.map +1 -1
- package/lib/browser/test.result.service.js +5 -5
- package/lib/browser/test.result.service.js.map +1 -1
- package/lib/browser/test.service.d.ts +0 -4
- package/lib/browser/test.service.d.ts.map +1 -1
- package/lib/browser/test.service.js +4 -31
- package/lib/browser/test.service.js.map +1 -1
- package/lib/browser/testing.contribution.d.ts.map +1 -1
- package/lib/browser/testing.contribution.js +9 -20
- package/lib/browser/testing.contribution.js.map +1 -1
- package/lib/common/commands.d.ts +0 -1
- package/lib/common/commands.d.ts.map +1 -1
- package/lib/common/commands.js +1 -6
- package/lib/common/commands.js.map +1 -1
- package/lib/common/constants.js +12 -12
- package/lib/common/constants.js.map +1 -1
- package/lib/common/getComputedState.d.ts +1 -1
- package/lib/common/getComputedState.d.ts.map +1 -1
- package/lib/common/getComputedState.js +1 -1
- package/lib/common/getComputedState.js.map +1 -1
- package/lib/common/index.d.ts +0 -5
- package/lib/common/index.d.ts.map +1 -1
- package/lib/common/index.js.map +1 -1
- package/lib/common/test-result.d.ts +2 -2
- package/lib/common/test-result.d.ts.map +1 -1
- package/lib/common/test-result.js +19 -19
- package/lib/common/test-result.js.map +1 -1
- package/lib/common/testCollection.d.ts +8 -9
- package/lib/common/testCollection.d.ts.map +1 -1
- package/lib/common/testCollection.js +27 -27
- package/lib/common/testCollection.js.map +1 -1
- package/lib/common/testId.js +21 -21
- package/lib/common/testId.js.map +1 -1
- package/lib/common/testingStates.js +11 -11
- package/lib/common/testingStates.js.map +1 -1
- package/lib/common/testingUri.d.ts +1 -1
- package/lib/common/testingUri.d.ts.map +1 -1
- package/lib/common/testingUri.js +16 -16
- package/lib/common/testingUri.js.map +1 -1
- package/package.json +13 -14
- package/lib/common/observableValue.d.ts +0 -14
- package/lib/common/observableValue.d.ts.map +0 -1
- package/lib/common/observableValue.js +0 -23
- package/lib/common/observableValue.js.map +0 -1
- package/src/browser/components/testing.explorer.tree.tsx +0 -129
- package/src/browser/components/testing.module.less +0 -26
- package/src/browser/components/testing.view.tsx +0 -35
- package/src/browser/icons/icons.less +0 -31
- package/src/browser/icons/icons.ts +0 -31
- package/src/browser/index.ts +0 -51
- package/src/browser/outputPeek/test-message-container.tsx +0 -183
- package/src/browser/outputPeek/test-output-peek.ts +0 -282
- package/src/browser/outputPeek/test-peek-message.service.ts +0 -15
- package/src/browser/outputPeek/test-peek-opener.service.ts +0 -131
- package/src/browser/outputPeek/test-peek-widget.less +0 -86
- package/src/browser/outputPeek/test-peek-widget.tsx +0 -127
- package/src/browser/outputPeek/test-tree-container.tsx +0 -171
- package/src/browser/test-contextkey.service.ts +0 -24
- package/src/browser/test-decorations.ts +0 -567
- package/src/browser/test-profile.service.ts +0 -66
- package/src/browser/test-tree-view.model.ts +0 -304
- package/src/browser/test.result.service.ts +0 -193
- package/src/browser/test.service.ts +0 -190
- package/src/browser/testing.contribution.ts +0 -470
- package/src/browser/theme.less +0 -6
- package/src/common/commands.ts +0 -78
- package/src/common/constants.ts +0 -57
- package/src/common/contextKeys.ts +0 -0
- package/src/common/getComputedState.ts +0 -136
- package/src/common/index.ts +0 -55
- package/src/common/observableValue.ts +0 -27
- package/src/common/test-profile.ts +0 -25
- package/src/common/test-result.ts +0 -328
- package/src/common/testCollection.ts +0 -680
- package/src/common/testId.ts +0 -191
- package/src/common/testing-view.ts +0 -28
- package/src/common/testingPeekOpener.ts +0 -31
- package/src/common/testingStates.ts +0 -92
- package/src/common/testingUri.ts +0 -101
- package/src/common/tree-view.model.ts +0 -41
- package/src/index.ts +0 -1
package/lib/common/testId.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testId.js","sourceRoot":"","sources":["../../src/common/testId.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;;AA2BhG;;GAEG;AACH,MAAa,MAAM;
|
|
1
|
+
{"version":3,"file":"testId.js","sourceRoot":"","sources":["../../src/common/testId.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,17 +14,17 @@ const { count } = ide_core_common_1.strings;
|
|
|
14
14
|
* reflected in the parent node.
|
|
15
15
|
*/
|
|
16
16
|
exports.statePriority = {
|
|
17
|
-
[2 /*
|
|
18
|
-
[6 /*
|
|
19
|
-
[4 /*
|
|
20
|
-
[1 /*
|
|
21
|
-
[3 /*
|
|
22
|
-
[0 /*
|
|
23
|
-
[5 /*
|
|
17
|
+
[2 /* Running */]: 6,
|
|
18
|
+
[6 /* Errored */]: 5,
|
|
19
|
+
[4 /* Failed */]: 4,
|
|
20
|
+
[1 /* Queued */]: 3,
|
|
21
|
+
[3 /* Passed */]: 2,
|
|
22
|
+
[0 /* Unset */]: 1,
|
|
23
|
+
[5 /* Skipped */]: 0,
|
|
24
24
|
};
|
|
25
|
-
const isFailedState = (s) => s === 6 /*
|
|
25
|
+
const isFailedState = (s) => s === 6 /* Errored */ || s === 4 /* Failed */;
|
|
26
26
|
exports.isFailedState = isFailedState;
|
|
27
|
-
const isStateWithResult = (s) => s === 6 /*
|
|
27
|
+
const isStateWithResult = (s) => s === 6 /* Errored */ || s === 4 /* Failed */ || s === 3 /* Passed */;
|
|
28
28
|
exports.isStateWithResult = isStateWithResult;
|
|
29
29
|
exports.stateNodes = Object.entries(exports.statePriority).reduce((acc, [stateStr, priority]) => {
|
|
30
30
|
const state = Number(stateStr);
|
|
@@ -36,7 +36,7 @@ exports.cmpPriority = cmpPriority;
|
|
|
36
36
|
const maxPriority = (...states) => {
|
|
37
37
|
switch (states.length) {
|
|
38
38
|
case 0:
|
|
39
|
-
return 0 /*
|
|
39
|
+
return 0 /* Unset */;
|
|
40
40
|
case 1:
|
|
41
41
|
return states[0];
|
|
42
42
|
case 2:
|
|
@@ -56,7 +56,7 @@ exports.maxPriority = maxPriority;
|
|
|
56
56
|
exports.statesInOrder = Object.keys(exports.statePriority)
|
|
57
57
|
.map((s) => Number(s))
|
|
58
58
|
.sort(exports.cmpPriority);
|
|
59
|
-
const isRunningState = (s) => s === 1 /*
|
|
59
|
+
const isRunningState = (s) => s === 1 /* Queued */ || s === 2 /* Running */;
|
|
60
60
|
exports.isRunningState = isRunningState;
|
|
61
61
|
const firstLine = (str) => {
|
|
62
62
|
const index = str.indexOf('\n');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testingStates.js","sourceRoot":"","sources":["../../src/common/testingStates.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;;AAEhG,8DAAmE;AACnE,+DAAoD;AAIpD,MAAM,EAAE,KAAK,EAAE,GAAG,yBAAO,CAAC;AAQ1B;;;;GAIG;AACU,QAAA,aAAa,GAAuC;IAC/D,
|
|
1
|
+
{"version":3,"file":"testingStates.js","sourceRoot":"","sources":["../../src/common/testingStates.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ interface IResultTestOutputReference extends IResultTestUri {
|
|
|
18
18
|
type: TestUriType.ResultActualOutput | TestUriType.ResultExpectedOutput;
|
|
19
19
|
messageIndex: number;
|
|
20
20
|
}
|
|
21
|
-
export type ParsedTestUri = IResultTestMessageReference | IResultTestOutputReference;
|
|
21
|
+
export declare type ParsedTestUri = IResultTestMessageReference | IResultTestOutputReference;
|
|
22
22
|
export declare const parseTestUri: (uri: URI) => ParsedTestUri | undefined;
|
|
23
23
|
export declare const buildTestUri: (parsed: ParsedTestUri) => URI;
|
|
24
24
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testingUri.d.ts","sourceRoot":"","sources":["../../src/common/testingUri.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAEhD,eAAO,MAAM,gBAAgB,uBAAuB,CAAC;AAErD,0BAAkB,WAAW;IAC3B,aAAa,IAAA;IACb,kBAAkB,IAAA;IAClB,oBAAoB,IAAA;CACrB;AAED,UAAU,cAAc;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,2BAA4B,SAAQ,cAAc;IAC1D,IAAI,EAAE,WAAW,CAAC,aAAa,CAAC;IAChC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,UAAU,0BAA2B,SAAQ,cAAc;IACzD,IAAI,EAAE,WAAW,CAAC,kBAAkB,GAAG,WAAW,CAAC,oBAAoB,CAAC;IACxE,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,
|
|
1
|
+
{"version":3,"file":"testingUri.d.ts","sourceRoot":"","sources":["../../src/common/testingUri.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAEhD,eAAO,MAAM,gBAAgB,uBAAuB,CAAC;AAErD,0BAAkB,WAAW;IAC3B,aAAa,IAAA;IACb,kBAAkB,IAAA;IAClB,oBAAoB,IAAA;CACrB;AAED,UAAU,cAAc;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,2BAA4B,SAAQ,cAAc;IAC1D,IAAI,EAAE,WAAW,CAAC,aAAa,CAAC;IAChC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,UAAU,0BAA2B,SAAQ,cAAc;IACzD,IAAI,EAAE,WAAW,CAAC,kBAAkB,GAAG,WAAW,CAAC,oBAAoB,CAAC;IACxE,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,oBAAY,aAAa,GAAG,2BAA2B,GAAG,0BAA0B,CAAC;AAWrF,eAAO,MAAM,YAAY,QAAS,GAAG,KAAG,aAAa,GAAG,SAkCvD,CAAC;AAEF,eAAO,MAAM,YAAY,WAAY,aAAa,KAAG,GAsBpD,CAAC"}
|
package/lib/common/testingUri.js
CHANGED
|
@@ -10,30 +10,30 @@ exports.TEST_DATA_SCHEME = 'opensumi-test-data';
|
|
|
10
10
|
const parseTestUri = (uri) => {
|
|
11
11
|
const type = uri.authority;
|
|
12
12
|
const [locationId, ...request] = uri.path.toString().slice(1).split('/');
|
|
13
|
-
if (request[0] === "message" /*
|
|
13
|
+
if (request[0] === "message" /* Messages */) {
|
|
14
14
|
const taskIndex = Number(request[1]);
|
|
15
15
|
const index = Number(request[2]);
|
|
16
16
|
const part = request[3];
|
|
17
17
|
const testExtId = uri.query;
|
|
18
|
-
if (type === "results" /*
|
|
18
|
+
if (type === "results" /* Results */) {
|
|
19
19
|
switch (part) {
|
|
20
|
-
case "TestFailureMessage" /*
|
|
21
|
-
return { resultId: locationId, taskIndex, testExtId, messageIndex: index, type: 0 /*
|
|
22
|
-
case "ActualOutput" /*
|
|
20
|
+
case "TestFailureMessage" /* Text */:
|
|
21
|
+
return { resultId: locationId, taskIndex, testExtId, messageIndex: index, type: 0 /* ResultMessage */ };
|
|
22
|
+
case "ActualOutput" /* ActualOutput */:
|
|
23
23
|
return {
|
|
24
24
|
resultId: locationId,
|
|
25
25
|
taskIndex,
|
|
26
26
|
testExtId,
|
|
27
27
|
messageIndex: index,
|
|
28
|
-
type: 1 /*
|
|
28
|
+
type: 1 /* ResultActualOutput */,
|
|
29
29
|
};
|
|
30
|
-
case "ExpectedOutput" /*
|
|
30
|
+
case "ExpectedOutput" /* ExpectedOutput */:
|
|
31
31
|
return {
|
|
32
32
|
resultId: locationId,
|
|
33
33
|
taskIndex,
|
|
34
34
|
testExtId,
|
|
35
35
|
messageIndex: index,
|
|
36
|
-
type: 2 /*
|
|
36
|
+
type: 2 /* ResultExpectedOutput */,
|
|
37
37
|
};
|
|
38
38
|
}
|
|
39
39
|
}
|
|
@@ -44,16 +44,16 @@ exports.parseTestUri = parseTestUri;
|
|
|
44
44
|
const buildTestUri = (parsed) => {
|
|
45
45
|
const uriParts = {
|
|
46
46
|
scheme: exports.TEST_DATA_SCHEME,
|
|
47
|
-
authority: "results" /*
|
|
47
|
+
authority: "results" /* Results */,
|
|
48
48
|
};
|
|
49
|
-
const msgRef = (locationId, ...remaining) => ide_core_common_1.URI.from(Object.assign(Object.assign({}, uriParts), { query: parsed.testExtId, path: ['', locationId, "message" /*
|
|
49
|
+
const msgRef = (locationId, ...remaining) => ide_core_common_1.URI.from(Object.assign(Object.assign({}, uriParts), { query: parsed.testExtId, path: ['', locationId, "message" /* Messages */, ...remaining].join('/') }));
|
|
50
50
|
switch (parsed.type) {
|
|
51
|
-
case 1 /*
|
|
52
|
-
return msgRef(parsed.resultId, parsed.taskIndex, parsed.messageIndex, "ActualOutput" /*
|
|
53
|
-
case 2 /*
|
|
54
|
-
return msgRef(parsed.resultId, parsed.taskIndex, parsed.messageIndex, "ExpectedOutput" /*
|
|
55
|
-
case 0 /*
|
|
56
|
-
return msgRef(parsed.resultId, parsed.taskIndex, parsed.messageIndex, "TestFailureMessage" /*
|
|
51
|
+
case 1 /* ResultActualOutput */:
|
|
52
|
+
return msgRef(parsed.resultId, parsed.taskIndex, parsed.messageIndex, "ActualOutput" /* ActualOutput */);
|
|
53
|
+
case 2 /* ResultExpectedOutput */:
|
|
54
|
+
return msgRef(parsed.resultId, parsed.taskIndex, parsed.messageIndex, "ExpectedOutput" /* ExpectedOutput */);
|
|
55
|
+
case 0 /* ResultMessage */:
|
|
56
|
+
return msgRef(parsed.resultId, parsed.taskIndex, parsed.messageIndex, "TestFailureMessage" /* Text */);
|
|
57
57
|
default:
|
|
58
58
|
throw new Error('Invalid test uri');
|
|
59
59
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testingUri.js","sourceRoot":"","sources":["../../src/common/testingUri.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;;AAEhG,+DAAgD;AAEnC,QAAA,gBAAgB,GAAG,oBAAoB,CAAC;AAmC9C,MAAM,YAAY,GAAG,CAAC,GAAQ,EAA6B,EAAE;IAClE,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC;IAC3B,MAAM,CAAC,UAAU,EAAE,GAAG,OAAO,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEzE,IAAI,OAAO,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"testingUri.js","sourceRoot":"","sources":["../../src/common/testingUri.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;;AAEhG,+DAAgD;AAEnC,QAAA,gBAAgB,GAAG,oBAAoB,CAAC;AAmC9C,MAAM,YAAY,GAAG,CAAC,GAAQ,EAA6B,EAAE;IAClE,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC;IAC3B,MAAM,CAAC,UAAU,EAAE,GAAG,OAAO,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEzE,IAAI,OAAO,CAAC,CAAC,CAAC,6BAA0B,EAAE;QACxC,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC;QAC5B,IAAI,IAAI,4BAAyB,EAAE;YACjC,QAAQ,IAAI,EAAE;gBACZ;oBACE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,uBAA2B,EAAE,CAAC;gBAC9G;oBACE,OAAO;wBACL,QAAQ,EAAE,UAAU;wBACpB,SAAS;wBACT,SAAS;wBACT,YAAY,EAAE,KAAK;wBACnB,IAAI,4BAAgC;qBACrC,CAAC;gBACJ;oBACE,OAAO;wBACL,QAAQ,EAAE,UAAU;wBACpB,SAAS;wBACT,SAAS;wBACT,YAAY,EAAE,KAAK;wBACnB,IAAI,8BAAkC;qBACvC,CAAC;aACL;SACF;KACF;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAlCW,QAAA,YAAY,gBAkCvB;AAEK,MAAM,YAAY,GAAG,CAAC,MAAqB,EAAO,EAAE;IACzD,MAAM,QAAQ,GAAG;QACf,MAAM,EAAE,wBAAgB;QACxB,SAAS,yBAAsB;KAChC,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,UAAkB,EAAE,GAAG,SAA8B,EAAE,EAAE,CACvE,qBAAG,CAAC,IAAI,iCACH,QAAQ,KACX,KAAK,EAAE,MAAM,CAAC,SAAS,EACvB,IAAI,EAAE,CAAC,EAAE,EAAE,UAAU,4BAAyB,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IACrE,CAAC;IAEL,QAAQ,MAAM,CAAC,IAAI,EAAE;QACnB;YACE,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,oCAA4B,CAAC;QACnG;YACE,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,wCAA8B,CAAC;QACrG;YACE,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,kCAAoB,CAAC;QAC3F;YACE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;KACvC;AACH,CAAC,CAAC;AAtBW,QAAA,YAAY,gBAsBvB"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opensumi/ide-testing",
|
|
3
|
-
"version": "2.21.13
|
|
3
|
+
"version": "2.21.13",
|
|
4
4
|
"files": [
|
|
5
|
-
"lib"
|
|
6
|
-
"src"
|
|
5
|
+
"lib"
|
|
7
6
|
],
|
|
8
7
|
"main": "lib/index.js",
|
|
9
8
|
"typings": "lib/index.d.ts",
|
|
@@ -15,18 +14,18 @@
|
|
|
15
14
|
"url": "git@github.com:opensumi/core.git"
|
|
16
15
|
},
|
|
17
16
|
"dependencies": {
|
|
18
|
-
"@opensumi/ide-core-common": "2.21.13
|
|
17
|
+
"@opensumi/ide-core-common": "2.21.13"
|
|
19
18
|
},
|
|
20
19
|
"devDependencies": {
|
|
21
|
-
"@opensumi/ide-components": "2.21.13
|
|
22
|
-
"@opensumi/ide-core-browser": "2.21.13
|
|
23
|
-
"@opensumi/ide-dev-tool": "1.
|
|
24
|
-
"@opensumi/ide-editor": "2.21.13
|
|
25
|
-
"@opensumi/ide-file-service": "2.21.13
|
|
26
|
-
"@opensumi/ide-main-layout": "2.21.13
|
|
27
|
-
"@opensumi/ide-markdown": "2.21.13
|
|
28
|
-
"@opensumi/ide-monaco": "2.21.13
|
|
29
|
-
"@opensumi/ide-monaco-enhance": "2.21.13
|
|
20
|
+
"@opensumi/ide-components": "2.21.13",
|
|
21
|
+
"@opensumi/ide-core-browser": "2.21.13",
|
|
22
|
+
"@opensumi/ide-dev-tool": "^1.1.0",
|
|
23
|
+
"@opensumi/ide-editor": "2.21.13",
|
|
24
|
+
"@opensumi/ide-file-service": "2.21.13",
|
|
25
|
+
"@opensumi/ide-main-layout": "2.21.13",
|
|
26
|
+
"@opensumi/ide-markdown": "2.21.13",
|
|
27
|
+
"@opensumi/ide-monaco": "2.21.13",
|
|
28
|
+
"@opensumi/ide-monaco-enhance": "2.21.13"
|
|
30
29
|
},
|
|
31
|
-
"gitHead": "
|
|
30
|
+
"gitHead": "1480afacfef7ef11eae65c5cbbddce416f227fe8"
|
|
32
31
|
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Disposable, Event } from '@opensumi/ide-core-common';
|
|
2
|
-
export interface IObservableValue<T> {
|
|
3
|
-
onDidChange: Event<T>;
|
|
4
|
-
readonly value: T;
|
|
5
|
-
}
|
|
6
|
-
export declare class ObservableValue<T> extends Disposable implements IObservableValue<T> {
|
|
7
|
-
private _value;
|
|
8
|
-
private readonly changeEmitter;
|
|
9
|
-
readonly onDidChange: Event<T>;
|
|
10
|
-
get value(): T;
|
|
11
|
-
set value(v: T);
|
|
12
|
-
constructor(_value: T);
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=observableValue.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"observableValue.d.ts","sourceRoot":"","sources":["../../src/common/observableValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAW,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAEvE,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;CACnB;AAED,qBAAa,eAAe,CAAC,CAAC,CAAE,SAAQ,UAAW,YAAW,gBAAgB,CAAC,CAAC,CAAC;IAgBnE,OAAO,CAAC,MAAM;IAf1B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0C;IAExE,SAAgB,WAAW,WAA4B;IAEvD,IAAW,KAAK,IAII,CAAC,CAFpB;IAED,IAAW,KAAK,CAAC,CAAC,EAAE,CAAC,EAKpB;gBAEmB,MAAM,EAAE,CAAC;CAG9B"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ObservableValue = void 0;
|
|
4
|
-
const ide_core_common_1 = require("@opensumi/ide-core-common");
|
|
5
|
-
class ObservableValue extends ide_core_common_1.Disposable {
|
|
6
|
-
get value() {
|
|
7
|
-
return this._value;
|
|
8
|
-
}
|
|
9
|
-
set value(v) {
|
|
10
|
-
if (v !== this._value) {
|
|
11
|
-
this._value = v;
|
|
12
|
-
this.changeEmitter.fire(v);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
constructor(_value) {
|
|
16
|
-
super();
|
|
17
|
-
this._value = _value;
|
|
18
|
-
this.changeEmitter = this.registerDispose(new ide_core_common_1.Emitter());
|
|
19
|
-
this.onDidChange = this.changeEmitter.event;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
exports.ObservableValue = ObservableValue;
|
|
23
|
-
//# sourceMappingURL=observableValue.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"observableValue.js","sourceRoot":"","sources":["../../src/common/observableValue.ts"],"names":[],"mappings":";;;AAAA,+DAAuE;AAOvE,MAAa,eAAmB,SAAQ,4BAAU;IAKhD,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAW,KAAK,CAAC,CAAI;QACnB,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE;YACrB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAChB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC5B;IACH,CAAC;IAED,YAAoB,MAAS;QAC3B,KAAK,EAAE,CAAC;QADU,WAAM,GAAN,MAAM,CAAG;QAfZ,kBAAa,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,yBAAO,EAAK,CAAC,CAAC;QAExD,gBAAW,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;IAevD,CAAC;CACF;AAnBD,0CAmBC"}
|
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
import { observer } from 'mobx-react-lite';
|
|
2
|
-
import React, { useEffect, useState } from 'react';
|
|
3
|
-
|
|
4
|
-
import { BasicRecycleTree, IRecycleTreeHandle, RecycleTree } from '@opensumi/ide-components/lib/recycle-tree';
|
|
5
|
-
import { BasicCompositeTreeNode } from '@opensumi/ide-components/lib/recycle-tree/basic/tree-node.define';
|
|
6
|
-
import { CommandService, Event, map, useInjectable } from '@opensumi/ide-core-browser';
|
|
7
|
-
|
|
8
|
-
import { ITestService, TestServiceToken } from '../../common';
|
|
9
|
-
import { DebugTestCommand, GoToTestCommand, RuntTestCommand } from '../../common/commands';
|
|
10
|
-
import { TestItemExpandState, TestRunProfileBitset } from '../../common/testCollection';
|
|
11
|
-
import { TestingExplorerInlineMenus } from '../../common/testing-view';
|
|
12
|
-
import { ITestTreeData, ITestTreeItem, TestTreeViewModelToken } from '../../common/tree-view.model';
|
|
13
|
-
import { getIconWithColor } from '../icons/icons';
|
|
14
|
-
import { TestTreeItem, TestTreeViewModelImpl } from '../test-tree-view.model';
|
|
15
|
-
|
|
16
|
-
import styles from './testing.module.less';
|
|
17
|
-
|
|
18
|
-
export const TestingExplorerTree: React.FC<{}> = observer(() => {
|
|
19
|
-
const testViewModel = useInjectable<TestTreeViewModelImpl>(TestTreeViewModelToken);
|
|
20
|
-
const testService = useInjectable<ITestService>(TestServiceToken);
|
|
21
|
-
const commandService = useInjectable<CommandService>(CommandService);
|
|
22
|
-
|
|
23
|
-
const [treeData, setTreeData] = useState<ITestTreeData[]>([]);
|
|
24
|
-
|
|
25
|
-
const getItemIcon = React.useCallback((item: ITestTreeItem) => getIconWithColor(item.state), []);
|
|
26
|
-
|
|
27
|
-
const asTreeData = React.useCallback(
|
|
28
|
-
(item: TestTreeItem): ITestTreeData => ({
|
|
29
|
-
label: item.label,
|
|
30
|
-
icon: '',
|
|
31
|
-
get iconClassName() {
|
|
32
|
-
return getItemIcon(item);
|
|
33
|
-
},
|
|
34
|
-
expandable: item.test.expand !== TestItemExpandState.NotExpandable,
|
|
35
|
-
rawItem: item,
|
|
36
|
-
sortText: item.sortText,
|
|
37
|
-
get children() {
|
|
38
|
-
if (item.test.expand === TestItemExpandState.Expandable || item.children) {
|
|
39
|
-
const testTree = testViewModel.getTestTreeItem(item.test.item.extId);
|
|
40
|
-
return Array.from(map(testTree?.children || [], asTreeData));
|
|
41
|
-
}
|
|
42
|
-
return null;
|
|
43
|
-
},
|
|
44
|
-
}),
|
|
45
|
-
[],
|
|
46
|
-
);
|
|
47
|
-
|
|
48
|
-
useEffect(() => {
|
|
49
|
-
const disposable = Event.debounce(
|
|
50
|
-
testViewModel.onUpdate,
|
|
51
|
-
() => {},
|
|
52
|
-
500,
|
|
53
|
-
)(() => {
|
|
54
|
-
for (const root of testViewModel.roots) {
|
|
55
|
-
if (root.depth === 0 && root.children.size > 0) {
|
|
56
|
-
let result: ITestTreeData[] = [];
|
|
57
|
-
for (const child of root.children) {
|
|
58
|
-
result.push(asTreeData(child));
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
result = result.sort((a, b) => (a.sortText || a.label).localeCompare(b.sortText || b.label));
|
|
62
|
-
setTreeData(result);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
|
|
67
|
-
return disposable.dispose;
|
|
68
|
-
}, [testViewModel]);
|
|
69
|
-
|
|
70
|
-
useEffect(() => {
|
|
71
|
-
if (testViewModel.treeHandlerApi) {
|
|
72
|
-
const model = testViewModel.treeHandlerApi.getModel();
|
|
73
|
-
if (model.root.children?.length === 0) {
|
|
74
|
-
model.root.refresh();
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}, [treeData]);
|
|
78
|
-
|
|
79
|
-
const resolveTestChildren = React.useCallback((node?: ITestTreeData) => {
|
|
80
|
-
if (!node) {
|
|
81
|
-
return null;
|
|
82
|
-
}
|
|
83
|
-
if (node.children && node.children.length > 0) {
|
|
84
|
-
return node.children;
|
|
85
|
-
}
|
|
86
|
-
return [];
|
|
87
|
-
}, []);
|
|
88
|
-
|
|
89
|
-
const inlineMenuActuator = React.useCallback((node: BasicCompositeTreeNode, action) => {
|
|
90
|
-
const { rawItem } = node.raw as ITestTreeData;
|
|
91
|
-
switch (action.command) {
|
|
92
|
-
case RuntTestCommand.id:
|
|
93
|
-
testService.runTests({
|
|
94
|
-
tests: rawItem.tests,
|
|
95
|
-
group: TestRunProfileBitset.Run,
|
|
96
|
-
});
|
|
97
|
-
break;
|
|
98
|
-
case DebugTestCommand.id:
|
|
99
|
-
testService.runTests({
|
|
100
|
-
tests: rawItem.tests,
|
|
101
|
-
group: TestRunProfileBitset.Debug,
|
|
102
|
-
});
|
|
103
|
-
break;
|
|
104
|
-
case GoToTestCommand.id:
|
|
105
|
-
commandService.executeCommand(GoToTestCommand.id, rawItem.test.item.extId);
|
|
106
|
-
break;
|
|
107
|
-
}
|
|
108
|
-
}, []);
|
|
109
|
-
|
|
110
|
-
const handleTreeReady = (handle: IRecycleTreeHandle) => {
|
|
111
|
-
testViewModel.setTreeHandlerApi(handle);
|
|
112
|
-
};
|
|
113
|
-
|
|
114
|
-
return (
|
|
115
|
-
<div>
|
|
116
|
-
{treeData.length > 0 && (
|
|
117
|
-
<BasicRecycleTree
|
|
118
|
-
treeData={treeData}
|
|
119
|
-
onReady={handleTreeReady}
|
|
120
|
-
itemClassname={styles.item_label}
|
|
121
|
-
height={900}
|
|
122
|
-
resolveChildren={resolveTestChildren}
|
|
123
|
-
inlineMenus={TestingExplorerInlineMenus}
|
|
124
|
-
inlineMenuActuator={inlineMenuActuator}
|
|
125
|
-
/>
|
|
126
|
-
)}
|
|
127
|
-
</div>
|
|
128
|
-
);
|
|
129
|
-
});
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
.testing_container {
|
|
2
|
-
padding: 0 8px;
|
|
3
|
-
|
|
4
|
-
.item_label {
|
|
5
|
-
.overflow_wrap {
|
|
6
|
-
padding-left: 5px;
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
.test_output_peek_message_container,
|
|
12
|
-
.test_output_peek_tree {
|
|
13
|
-
height: 100%;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
.test_output_peek_tree {
|
|
17
|
-
background-color: var(--peekViewResult-background);
|
|
18
|
-
color: var(--peekViewResult-lineForeground);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
.preview_markdown {
|
|
22
|
-
position: relative;
|
|
23
|
-
overflow: hidden;
|
|
24
|
-
padding: 8px 12px 8px 20px;
|
|
25
|
-
height: calc(100% - 16px);
|
|
26
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import React, { useEffect, useState } from 'react';
|
|
2
|
-
|
|
3
|
-
import { localize, useInjectable, ViewContextKeyRegistry } from '@opensumi/ide-core-browser';
|
|
4
|
-
import { InlineMenuBar } from '@opensumi/ide-core-browser/lib/components/actions';
|
|
5
|
-
import { AbstractContextMenuService, IContextMenu, MenuId } from '@opensumi/ide-core-browser/lib/menu/next';
|
|
6
|
-
import { TitleBar } from '@opensumi/ide-main-layout/lib/browser/accordion/titlebar.view';
|
|
7
|
-
|
|
8
|
-
import { Testing } from '../../common/constants';
|
|
9
|
-
|
|
10
|
-
import { TestingExplorerTree } from './testing.explorer.tree';
|
|
11
|
-
import styles from './testing.module.less';
|
|
12
|
-
|
|
13
|
-
export const TestingView = () => {
|
|
14
|
-
const menuService = useInjectable<AbstractContextMenuService>(AbstractContextMenuService);
|
|
15
|
-
const viewContextKeyRegistry = useInjectable<ViewContextKeyRegistry>(ViewContextKeyRegistry);
|
|
16
|
-
|
|
17
|
-
const [menus, setMenus] = useState<IContextMenu>();
|
|
18
|
-
|
|
19
|
-
useEffect(() => {
|
|
20
|
-
const menu = menuService.createMenu({
|
|
21
|
-
id: MenuId.ViewTitle,
|
|
22
|
-
contextKeyService: viewContextKeyRegistry.getContextKeyService(Testing.ExplorerViewId),
|
|
23
|
-
});
|
|
24
|
-
setMenus(menu);
|
|
25
|
-
}, []);
|
|
26
|
-
|
|
27
|
-
return (
|
|
28
|
-
<div className={styles.testing_container}>
|
|
29
|
-
<TitleBar title={localize('test.title')} menubar={menus ? <InlineMenuBar menus={menus}></InlineMenuBar> : null} />
|
|
30
|
-
{/* 筛选器暂时先不搞 */}
|
|
31
|
-
{/* <Input placeholder={'Filter (e.g. text, !exclude, @tag)'} addonAfter={<Icon icon='filter' />} /> */}
|
|
32
|
-
<TestingExplorerTree />
|
|
33
|
-
</div>
|
|
34
|
-
);
|
|
35
|
-
};
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
.testing_icon_iconFailed {
|
|
2
|
-
color: var(--testing-iconFailed) !important;
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
.testing_icon_iconErrored {
|
|
6
|
-
color: var(--testing-iconErrored) !important;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
.testing_icon_iconPassed {
|
|
10
|
-
color: var(--testing-iconPassed) !important;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
.testing_icon_runAction {
|
|
14
|
-
color: var(--testing-runAction) !important;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
.testing_icon_iconQueued {
|
|
18
|
-
color: var(--testing-iconQueued) !important;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
.testing_icon_iconUnset {
|
|
22
|
-
color: var(--testing-iconUnset) !important;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
.monaco-editor .testing-run-glyph {
|
|
26
|
-
cursor: pointer;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
.monaco-editor .testing-inline-message-content {
|
|
30
|
-
cursor: pointer;
|
|
31
|
-
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { getExternalIcon } from '@opensumi/ide-core-browser';
|
|
2
|
-
|
|
3
|
-
import { TestResultState } from '../../common/testCollection';
|
|
4
|
-
|
|
5
|
-
export const defaultIconColor = 'testing_icon_iconPassed';
|
|
6
|
-
|
|
7
|
-
export const testStatesToIconColors: { [K in TestResultState]?: string } = {
|
|
8
|
-
[TestResultState.Errored]: 'testing_icon_iconFailed',
|
|
9
|
-
[TestResultState.Failed]: 'testing_icon_iconErrored',
|
|
10
|
-
[TestResultState.Passed]: defaultIconColor,
|
|
11
|
-
[TestResultState.Queued]: 'testing_icon_iconQueued',
|
|
12
|
-
[TestResultState.Unset]: 'testing_icon_iconUnset',
|
|
13
|
-
[TestResultState.Skipped]: 'testing_icon_iconUnset',
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
export const testingStatesToIcons = new Map<TestResultState, string>([
|
|
17
|
-
[TestResultState.Errored, getExternalIcon('issues')],
|
|
18
|
-
[TestResultState.Failed, getExternalIcon('error')],
|
|
19
|
-
[TestResultState.Passed, getExternalIcon('pass')],
|
|
20
|
-
[TestResultState.Queued, getExternalIcon('history')],
|
|
21
|
-
[TestResultState.Running, getExternalIcon('loading') + ' kt-icon-loading'],
|
|
22
|
-
[TestResultState.Skipped, getExternalIcon('debug-step-over')],
|
|
23
|
-
[TestResultState.Unset, getExternalIcon('circle-outline')],
|
|
24
|
-
]);
|
|
25
|
-
|
|
26
|
-
export const testingRunIcon = getExternalIcon('run');
|
|
27
|
-
export const testingRunAllIcon = getExternalIcon('run-all');
|
|
28
|
-
export const testingRefreshTests = getExternalIcon('refresh');
|
|
29
|
-
|
|
30
|
-
export const getIconWithColor = (state: TestResultState) =>
|
|
31
|
-
`${testingStatesToIcons.get(state)} ${testStatesToIconColors[state]}` || '';
|
package/src/browser/index.ts
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { Provider, Injectable } from '@opensumi/di';
|
|
2
|
-
import { BrowserModule } from '@opensumi/ide-core-browser';
|
|
3
|
-
|
|
4
|
-
import { TestPeekMessageToken, TestServiceToken } from '../common';
|
|
5
|
-
import { TestProfileServiceToken } from '../common/test-profile';
|
|
6
|
-
import { TestResultServiceToken } from '../common/test-result';
|
|
7
|
-
import { TestingPeekOpenerServiceToken } from '../common/testingPeekOpener';
|
|
8
|
-
import { TestTreeViewModelToken } from '../common/tree-view.model';
|
|
9
|
-
|
|
10
|
-
import { TestingPeekMessageServiceImpl } from './outputPeek/test-peek-message.service';
|
|
11
|
-
import { TestingPeekOpenerServiceImpl } from './outputPeek/test-peek-opener.service';
|
|
12
|
-
import { TestProfileServiceImpl } from './test-profile.service';
|
|
13
|
-
import { TestTreeViewModelImpl } from './test-tree-view.model';
|
|
14
|
-
import { TestResultServiceImpl } from './test.result.service';
|
|
15
|
-
import { TestServiceImpl } from './test.service';
|
|
16
|
-
import { TestingContribution } from './testing.contribution';
|
|
17
|
-
|
|
18
|
-
import './icons/icons.less';
|
|
19
|
-
import './outputPeek/test-peek-widget.less';
|
|
20
|
-
import './theme.less';
|
|
21
|
-
|
|
22
|
-
@Injectable()
|
|
23
|
-
export class TestingModule extends BrowserModule {
|
|
24
|
-
providers: Provider[] = [
|
|
25
|
-
TestingContribution,
|
|
26
|
-
{
|
|
27
|
-
token: TestServiceToken,
|
|
28
|
-
useClass: TestServiceImpl,
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
token: TestTreeViewModelToken,
|
|
32
|
-
useClass: TestTreeViewModelImpl,
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
token: TestProfileServiceToken,
|
|
36
|
-
useClass: TestProfileServiceImpl,
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
token: TestResultServiceToken,
|
|
40
|
-
useClass: TestResultServiceImpl,
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
token: TestingPeekOpenerServiceToken,
|
|
44
|
-
useClass: TestingPeekOpenerServiceImpl,
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
token: TestPeekMessageToken,
|
|
48
|
-
useClass: TestingPeekMessageServiceImpl,
|
|
49
|
-
},
|
|
50
|
-
];
|
|
51
|
-
}
|