Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions .github/workflows/build-dotnet.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,9 @@ jobs:
filters: |
dotnet:
- "dotnet/**"
- "ts/packages/agents/visualStudio/**"
- "ts/packages/utils/webSocketUtils/**"
- "ts/packages/agentServer/protocol/**"
- "ts/packages/agents/powershell/**"
- "ts/packages/config/**"
- "ts/packages/agents/desktop/src/**Schema.ts"
Expand Down Expand Up @@ -91,6 +94,28 @@ jobs:
if: ${{ github.event_name != 'pull_request' || steps.filter.outputs.dotnet != 'false' }}
working-directory: dotnet
run: msbuild.exe typeagent/TypeAgent.sln /p:platform="Any CPU" /p:configuration="${{ matrix.configuration }}"
- name: Build Visual Studio solution, WebView, and VSIX
if: ${{ github.event_name != 'pull_request' || steps.filter.outputs.dotnet != 'false' }}
working-directory: dotnet
run: msbuild.exe visualStudioTypeAgent/VisualStudioTypeAgent.sln /restore /p:platform="Any CPU" /p:configuration="${{ matrix.configuration }}" /p:DeployExtension=false
- name: Build Visual Studio bridge TypeScript
if: ${{ (github.event_name != 'pull_request' || steps.filter.outputs.dotnet != 'false') && matrix.configuration == 'Release' }}
working-directory: ts
run: pnpm exec fluid-build "@typeagent/visualstudio-agent" -t tsc --dep
- name: Test Visual Studio bridge TypeScript authentication
if: ${{ (github.event_name != 'pull_request' || steps.filter.outputs.dotnet != 'false') && matrix.configuration == 'Release' }}
working-directory: ts
run: pnpm --filter @typeagent/visualstudio-agent run test:local -- --runInBand
- name: Build Visual Studio bridge for .NET Framework
if: ${{ (github.event_name != 'pull_request' || steps.filter.outputs.dotnet != 'false') && matrix.configuration == 'Release' }}
run: dotnet build dotnet/visualStudioTypeAgent.Tests/VisualStudioTypeAgent.BridgeCompile.csproj --configuration Release --nologo
- name: Test Visual Studio bridge authentication
if: ${{ (github.event_name != 'pull_request' || steps.filter.outputs.dotnet != 'false') && matrix.configuration == 'Release' }}
run: dotnet run --project dotnet/visualStudioTypeAgent.Tests/VisualStudioTypeAgent.Tests.csproj --configuration Release
- name: Test Visual Studio bridge TypeScript/C# interoperability
if: ${{ (github.event_name != 'pull_request' || steps.filter.outputs.dotnet != 'false') && matrix.configuration == 'Release' }}
shell: pwsh
run: ./dotnet/visualStudioTypeAgent.Tests/RunInterop.ps1 -Configuration Release
- name: Build PowerShell sandbox broker
if: ${{ github.event_name != 'pull_request' || steps.filter.outputs.dotnet != 'false' }}
run: dotnet build dotnet/powerShellSandboxBroker/PowerShellSandboxBroker.csproj --configuration ${{ matrix.configuration }} --runtime win-x64
Expand Down
30 changes: 30 additions & 0 deletions dotnet/visualStudioTypeAgent.Tests/BridgeCompileStubs.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.

using System.Threading;
using System.Threading.Tasks;
using Microsoft.VisualStudio.Shell;
using Newtonsoft.Json.Linq;

namespace Microsoft.VisualStudio.Shell
{
public class AsyncPackage
{
}
}

namespace Microsoft.TypeAgent.VisualStudio.Bridge
{
internal sealed class DTEActionExecutor : IBridgeActionExecutor
{
public DTEActionExecutor(AsyncPackage package)
{
}

public Task<object?> ExecuteAsync(
string actionName,
JObject parameters,
CancellationToken cancellation) =>
Task.FromResult<object?>(null);
}
}
6 changes: 6 additions & 0 deletions dotnet/visualStudioTypeAgent.Tests/Directory.Build.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<Project>
<PropertyGroup>
<BaseIntermediateOutputPath>obj\$(MSBuildProjectName)\</BaseIntermediateOutputPath>
<MSBuildProjectExtensionsPath>$(BaseIntermediateOutputPath)</MSBuildProjectExtensionsPath>
</PropertyGroup>
</Project>
Loading
Loading