From 3d16456bbea317aaee55b22f0ff872a9ec9401b7 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 14 May 2026 02:17:52 +0000 Subject: [PATCH] Fix IDE1006: add Async suffix to async test methods in MagenticOrchestrationTests Agent-Logs-Url: https://github.com/microsoft/agent-framework/sessions/629fcc07-865e-4832-9e59-ea13df561c5a Co-authored-by: lokitoth <6936551+lokitoth@users.noreply.github.com> --- .../MagenticOrchestrationTests.cs | 46 +++++++++---------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/MagenticOrchestrationTests.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/MagenticOrchestrationTests.cs index bcbf13b4f6..1f620adec2 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/MagenticOrchestrationTests.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/MagenticOrchestrationTests.cs @@ -1,4 +1,4 @@ -// Copyright (c) Microsoft. All rights reserved. +// Copyright (c) Microsoft. All rights reserved. using System; using System.Collections.Generic; @@ -18,7 +18,7 @@ namespace Microsoft.Agents.AI.Workflows.UnitTests; public class MagenticOrchestrationTests { [Fact] - public async Task Task_Completes_When_RequestSatisfied() + public async Task Task_Completes_When_RequestSatisfiedAsync() { // Arrange: Manager reports task satisfied on first coordination round // Each response must have unique message IDs, so create separate instances @@ -53,7 +53,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task PlanReview_Approved_Proceeds() + public async Task PlanReview_Approved_ProceedsAsync() { // Arrange: Human approves initial plan List factsResponse = CreatePlanResponse("Facts about executing the plan"); @@ -105,7 +105,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task Initial_Plan_Emits_PlanCreatedEvent() + public async Task Initial_Plan_Emits_PlanCreatedEventAsync() { // Arrange List factsResponse = CreatePlanResponse("Facts about the task"); @@ -143,7 +143,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task NextSpeaker_Invalid_Triggers_FinalAnswer() + public async Task NextSpeaker_Invalid_Triggers_FinalAnswerAsync() { // Arrange: ProgressLedger returns invalid next_speaker List factsResponse = CreatePlanResponse("Facts about the task"); @@ -182,7 +182,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task ProgressLedger_Updated_Event_Emitted() + public async Task ProgressLedger_Updated_Event_EmittedAsync() { // Arrange List factsResponse = CreatePlanResponse("Facts about the task"); @@ -221,7 +221,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task PlanSignoff_Disabled_Proceeds_Immediately() + public async Task PlanSignoff_Disabled_Proceeds_ImmediatelyAsync() { // Arrange: requirePlanSignoff=false should mean no plan review request List factsResponse = CreatePlanResponse("Task facts"); @@ -260,7 +260,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task NextSpeaker_Empty_Falls_Back_To_First() + public async Task NextSpeaker_Empty_Falls_Back_To_FirstAsync() { // Arrange: First progress ledger returns empty next_speaker, which should fall back to first participant. // Round 1: empty speaker → fallback to Worker (first participant) → Worker echoes @@ -311,7 +311,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task Task_Completes_After_Multiple_Rounds() + public async Task Task_Completes_After_Multiple_RoundsAsync() { // Arrange: Round 1 delegates to Worker (not satisfied), round 2 completes // Manager turn sequence: facts1, plan1, ledger1(not satisfied), ledger2(satisfied), finalAnswer @@ -361,7 +361,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task PlanReview_Revised_Triggers_Replan() + public async Task PlanReview_Revised_Triggers_ReplanAsync() { // Arrange: Human rejects initial plan with revision, triggering a replan. // Flow: facts1, plan1 → PlanCreatedEvent → plan review (pending) @@ -440,7 +440,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task MaxRoundLimit_Terminates_Workflow() + public async Task MaxRoundLimit_Terminates_WorkflowAsync() { // Arrange: MaxRounds=1, so round 1 delegates to Worker, round 2 hits limit and terminates. // Manager turns: facts1, plan1, ledger1(not satisfied→delegates), then limit hit before ledger. @@ -477,7 +477,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task MaxStallCount_Triggers_Reset() + public async Task MaxStallCount_Triggers_ResetAsync() { // Arrange: MaxStallCount=0, so one stall (isInLoop=true, StallCount=1 > 0) triggers ResetAndReplanAsync. // Flow: facts1, plan1 → round1 ledger(stall: isInLoop=true) → StallCount=1 → IsStalled → Reset @@ -530,7 +530,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task Instruction_Message_Sent_When_Present() + public async Task Instruction_Message_Sent_When_PresentAsync() { // Arrange: Progress ledger has a non-empty instruction_or_question. // The orchestrator should send the instruction as a ChatMessage before delegating to the next agent. @@ -581,7 +581,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task PlanReview_On_Stall_Replan() + public async Task PlanReview_On_Stall_ReplanAsync() { // Arrange: Plan signoff enabled, stall triggers reset, replan requires new plan review. // Flow: facts1, plan1 → PlanCreatedEvent → plan review (pending) @@ -674,7 +674,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task MaxResetLimit_Terminates_Workflow() + public async Task MaxResetLimit_Terminates_WorkflowAsync() { // Arrange: MaxStallCount=0, MaxResets=1. // Flow: facts1, plan1 → ledger1(stall: isInLoop=true) → StallCount=1 > 0 → IsStalled → ResetAndReplanAsync @@ -718,7 +718,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task ProgressLedger_Retry_On_Parse_Failure() + public async Task ProgressLedger_Retry_On_Parse_FailureAsync() { // Arrange: First progress ledger attempt returns invalid JSON (triggers parse failure + warning), // second attempt returns valid JSON (satisfied=true). @@ -761,7 +761,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task ProgressLedger_Max_Retries_Triggers_Reset() + public async Task ProgressLedger_Max_Retries_Triggers_ResetAsync() { // Arrange: All 3 progress ledger retry attempts return invalid JSON → exception → ResetAndReplanAsync. // After reset: new plan, valid ledger (satisfied), final answer. @@ -814,7 +814,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task Stall_NoProgress_Increments_StallCount() + public async Task Stall_NoProgress_Increments_StallCountAsync() { // Arrange: MaxStallCount=0, progress ledger reports IsProgressBeingMade=false (not IsInLoop). // This exercises the alternative stall trigger: !IsProgressBeingMade. @@ -867,7 +867,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task Task_Delegates_To_Correct_Agent() + public async Task Task_Delegates_To_Correct_AgentAsync() { // Arrange: Two participants (WorkerA, WorkerB). Manager selects "WorkerA" as next speaker. // We verify that WorkerA produces a response update event and WorkerB does not. @@ -927,7 +927,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task Progress_Made_Decrements_StallCount() + public async Task Progress_Made_Decrements_StallCountAsync() { // Arrange: MaxStallCount=3, so a single stall won't trigger reset. // Round 1: isInLoop=true (stall count → 1), delegates to Worker @@ -996,7 +996,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task Consecutive_Stalls_Trigger_Reset() + public async Task Consecutive_Stalls_Trigger_ResetAsync() { // Arrange: MaxStallCount=1 — two consecutive stalls trigger reset (StallCount 2 > 1). // Round 1: isInLoop=true (stall count → 1), delegates to Worker @@ -1065,7 +1065,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task PlanReview_Multiple_Revisions() + public async Task PlanReview_Multiple_RevisionsAsync() { // Arrange: Human rejects the plan twice before approving on the third review. // Flow: facts1, plan1 → PlanCreatedEvent → plan review (pending) @@ -1184,7 +1184,7 @@ public class MagenticOrchestrationTests } [Fact] - public async Task Terminated_Context_Rejects_New_Messages() + public async Task Terminated_Context_Rejects_New_MessagesAsync() { // Arrange: Run a workflow to completion so IsTerminated=true, then send another message. // The framework accepts the message (TrySendMessageAsync returns true), but Magentic