Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
microsoft
GitHub Repository: microsoft/vscode
Path: blob/main/extensions/copilot/src/extension/intents/node/testIntent/testDeps.tsx
13405 views
1
/*---------------------------------------------------------------------------------------------
2
* Copyright (c) Microsoft Corporation. All rights reserved.
3
* Licensed under the MIT License. See License.txt in the project root for license information.
4
*--------------------------------------------------------------------------------------------*/
5
6
import { PromptElement, PromptElementProps, PromptSizing } from '@vscode/prompt-tsx';
7
import { ITestDepsResolver } from '../../../../platform/testing/node/testDepsResolver';
8
import { Tag } from '../../../prompts/node/base/tag';
9
10
11
type Props = PromptElementProps<{
12
languageId: string;
13
}>;
14
15
export class TestDeps extends PromptElement<Props> {
16
17
constructor(
18
props: Props,
19
@ITestDepsResolver private readonly testDepsResolver: ITestDepsResolver,
20
) {
21
super(props);
22
}
23
24
override async render(state: void, sizing: PromptSizing) {
25
const { languageId } = this.props;
26
const testFrameworks = await this.testDepsResolver.getTestDeps(languageId);
27
return testFrameworks.length > 0 &&
28
<Tag name='testDependencies' priority={this.props.priority}>
29
The project has the following testing dependencies: {testFrameworks.join(', ')}.
30
</Tag>;
31
}
32
}
33
34