diff --git a/dotnet/src/Microsoft.Agents.AI.Workflows/WorkflowBuilderExtensions.cs b/dotnet/src/Microsoft.Agents.AI.Workflows/WorkflowBuilderExtensions.cs index 37b6f26388..179dc78c88 100644 --- a/dotnet/src/Microsoft.Agents.AI.Workflows/WorkflowBuilderExtensions.cs +++ b/dotnet/src/Microsoft.Agents.AI.Workflows/WorkflowBuilderExtensions.cs @@ -116,6 +116,13 @@ public static class WorkflowBuilderExtensions static bool IsAllowedType(object? message) => message is null; } + /// + /// Validates a target collection and returns it as a list. + /// + /// The target executor bindings to validate. + /// A validated list of target executor bindings. + /// Thrown when is null or contains a null element. + /// Thrown when is empty. private static List ValidateTargets(IEnumerable targets) { Throw.IfNull(targets); diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/WorkflowBuilderSmokeTests.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/WorkflowBuilderSmokeTests.cs index a44bd9ad8b..27bbb1092c 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/WorkflowBuilderSmokeTests.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.UnitTests/WorkflowBuilderSmokeTests.cs @@ -447,6 +447,9 @@ public partial class WorkflowBuilderSmokeTests Assert.Throws("executors", () => switchBuilder.WithDefault([target, null!])); } + /// + /// Gets the only edge emitted by the specified workflow source. + /// private static Edge GetSingleEdge(Workflow workflow, string sourceId) => workflow.Edges[sourceId].Should().ContainSingle().Subject; }