Merge latest main into macOS support and preserve portable integrations

This commit is contained in:
dh
2026-10-03 10:16:09 +02:00
55 changed files with 2282 additions and 113 deletions
@@ -1,13 +1,38 @@
using MeetingAssistant.LaunchProfiles;
using MeetingAssistant.MacOs;
using MeetingAssistant.Workflow;
using MeetingAssistant.Notifications;
using Microsoft.AspNetCore.Mvc.Testing;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Options;
namespace MeetingAssistant.Tests;
public sealed class MacOsDesktopControlManifestTests
{
[Fact]
public void AutomaticWorkflowChangeCannotSilentlyLoseItsPromptOnMacOs()
{
IWorkflowRulesEditorWindowService service = new MacOsWorkflowRulesEditorWindowService(
Options.Create(new MeetingAssistantOptions()));
Assert.Throws<PlatformNotSupportedException>(() => service.ShowWithPrompt("Update meeting rules"));
}
[Fact]
public async Task MacOsApplicationDeclinesUnavailableAutomaticApprovals()
{
if (!OperatingSystem.IsMacOS())
{
return;
}
using var factory = new WebApplicationFactory<Program>();
var approval = factory.Services.GetRequiredService<AgentApprovalService>();
Assert.False(await approval.ConfirmAsync("Test approval", "Do not apply a change", CancellationToken.None));
}
[Fact]
public void MacOsApplicationRegistersARealInteractiveAgentWindow()
{