From f94ed16bc83ab79d43dd499078371e0cd77462b6 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 14 May 2026 12:56:02 +0000 Subject: [PATCH] Use indexed parameter name in SwitchBuilder Throw.IfNull: executors[index] Agent-Logs-Url: https://github.com/microsoft/agent-framework/sessions/c5655707-5b0b-44f3-98a9-5f3961e32cfe Co-authored-by: lokitoth <6936551+lokitoth@users.noreply.github.com> --- .../src/Microsoft.Agents.AI.Workflows/SwitchBuilder.cs | 9 +++++++-- .../WorkflowBuilderSmokeTests.cs | 4 ++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/dotnet/src/Microsoft.Agents.AI.Workflows/SwitchBuilder.cs b/dotnet/src/Microsoft.Agents.AI.Workflows/SwitchBuilder.cs index 0a6b9218f7..8141be1075 100644 --- a/dotnet/src/Microsoft.Agents.AI.Workflows/SwitchBuilder.cs +++ b/dotnet/src/Microsoft.Agents.AI.Workflows/SwitchBuilder.cs @@ -36,10 +36,12 @@ public sealed class SwitchBuilder Throw.IfNull(executors); HashSet indicies = []; + int executorIndex = 0; foreach (ExecutorBinding executor in executors) { - Throw.IfNull(executor); + Throw.IfNull(executor, $"{nameof(executors)}[{executorIndex}]"); + executorIndex++; if (!this._executorIndicies.TryGetValue(executor.Id, out int index)) { @@ -66,9 +68,12 @@ public sealed class SwitchBuilder { Throw.IfNull(executors); + int executorIndex = 0; + foreach (ExecutorBinding executor in executors) { - Throw.IfNull(executor); + Throw.IfNull(executor, $"{nameof(executors)}[{executorIndex}]"); + executorIndex++; if (!this._executorIndicies.TryGetValue(executor.Id, out int index)) { diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/WorkflowBuilderSmokeTests.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/WorkflowBuilderSmokeTests.cs index 4997197445..c2b855b8bf 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/WorkflowBuilderSmokeTests.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/WorkflowBuilderSmokeTests.cs @@ -445,9 +445,9 @@ public partial class WorkflowBuilderSmokeTests // Act/Assert Assert.Throws("predicate", () => switchBuilder.AddCase(null!, [target])); Assert.Throws("executors", () => switchBuilder.AddCase(_ => true, null!)); - Assert.Throws("executor", () => switchBuilder.AddCase(_ => true, [target, null!])); + Assert.Throws("executors[1]", () => switchBuilder.AddCase(_ => true, [target, null!])); Assert.Throws("executors", () => switchBuilder.WithDefault(null!)); - Assert.Throws("executor", () => switchBuilder.WithDefault([target, null!])); + Assert.Throws("executors[1]", () => switchBuilder.WithDefault([target, null!])); } ///