diff --git a/dotnet/agent-framework-dotnet.slnx b/dotnet/agent-framework-dotnet.slnx index 9801ccc105..d5773ee9d9 100644 --- a/dotnet/agent-framework-dotnet.slnx +++ b/dotnet/agent-framework-dotnet.slnx @@ -413,6 +413,10 @@ + + + + diff --git a/dotnet/eng/MSBuild/Shared.props b/dotnet/eng/MSBuild/Shared.props index 9b4771a64e..94ac5b417b 100644 --- a/dotnet/eng/MSBuild/Shared.props +++ b/dotnet/eng/MSBuild/Shared.props @@ -8,6 +8,9 @@ + + + diff --git a/dotnet/src/Shared/IntegrationTestsAzureCredentials/README.md b/dotnet/src/Shared/IntegrationTestsAzureCredentials/README.md new file mode 100644 index 0000000000..e26295ed7f --- /dev/null +++ b/dotnet/src/Shared/IntegrationTestsAzureCredentials/README.md @@ -0,0 +1,9 @@ +# Integration Tests Azure Credentials + +Adds a helper for loading Azure credentials in integration tests. + +```xml + + true + +``` diff --git a/dotnet/src/Shared/IntegrationTestsAzureCredentials/TestAzureCliCredentials.cs b/dotnet/src/Shared/IntegrationTestsAzureCredentials/TestAzureCliCredentials.cs new file mode 100644 index 0000000000..f1c83ce1f2 --- /dev/null +++ b/dotnet/src/Shared/IntegrationTestsAzureCredentials/TestAzureCliCredentials.cs @@ -0,0 +1,28 @@ +// Copyright (c) Microsoft. All rights reserved. + +#pragma warning disable IDE0005 // This is required in some projects and not in others. +using System; +#pragma warning restore IDE0005 +using Azure.Identity; + +namespace Shared.IntegrationTests; + +/// +/// Provides credential instances for integration tests with +/// increased timeouts to avoid CI pipeline authentication failures. +/// +internal static class TestAzureCliCredentials +{ + /// + /// The default timeout for Azure CLI credential operations. + /// Increased from the default (~13s) to accommodate CI pipeline latency. + /// + private static readonly TimeSpan s_processTimeout = TimeSpan.FromSeconds(60); + + /// + /// Creates a new with an increased process timeout + /// suitable for CI environments. + /// + public static AzureCliCredential CreateAzureCliCredential() => + new(new AzureCliCredentialOptions { ProcessTimeout = s_processTimeout }); +} diff --git a/dotnet/tests/AzureAI.IntegrationTests/AIProjectClientCreateTests.cs b/dotnet/tests/AzureAI.IntegrationTests/AIProjectClientCreateTests.cs index ec4103f6a8..a6691a41bd 100644 --- a/dotnet/tests/AzureAI.IntegrationTests/AIProjectClientCreateTests.cs +++ b/dotnet/tests/AzureAI.IntegrationTests/AIProjectClientCreateTests.cs @@ -6,7 +6,6 @@ using AgentConformance.IntegrationTests.Support; using Azure.AI.Projects; using Azure.AI.Projects.OpenAI; -using Azure.Identity; using Microsoft.Agents.AI; using Microsoft.Extensions.AI; using OpenAI.Files; @@ -17,7 +16,7 @@ namespace AzureAI.IntegrationTests; public class AIProjectClientCreateTests { - private readonly AIProjectClient _client = new(new Uri(TestConfiguration.GetRequiredValue(TestSettings.AzureAIProjectEndpoint)), new AzureCliCredential()); + private readonly AIProjectClient _client = new(new Uri(TestConfiguration.GetRequiredValue(TestSettings.AzureAIProjectEndpoint)), TestAzureCliCredentials.CreateAzureCliCredential()); [Theory] [InlineData("CreateWithChatClientAgentOptionsAsync")] diff --git a/dotnet/tests/AzureAI.IntegrationTests/AIProjectClientFixture.cs b/dotnet/tests/AzureAI.IntegrationTests/AIProjectClientFixture.cs index 64a8e86c8a..2485176cd3 100644 --- a/dotnet/tests/AzureAI.IntegrationTests/AIProjectClientFixture.cs +++ b/dotnet/tests/AzureAI.IntegrationTests/AIProjectClientFixture.cs @@ -8,7 +8,6 @@ using AgentConformance.IntegrationTests.Support; using Azure.AI.Projects; using Azure.AI.Projects.OpenAI; -using Azure.Identity; using Microsoft.Agents.AI; using Microsoft.Extensions.AI; using OpenAI.Responses; @@ -168,13 +167,13 @@ public Task DisposeAsync() public virtual async Task InitializeAsync() { - this._client = new(new Uri(TestConfiguration.GetRequiredValue(TestSettings.AzureAIProjectEndpoint)), new AzureCliCredential()); + this._client = new(new Uri(TestConfiguration.GetRequiredValue(TestSettings.AzureAIProjectEndpoint)), TestAzureCliCredentials.CreateAzureCliCredential()); this._agent = await this.CreateChatClientAgentAsync(); } public async Task InitializeAsync(ChatClientAgentOptions options) { - this._client = new(new Uri(TestConfiguration.GetRequiredValue(TestSettings.AzureAIProjectEndpoint)), new AzureCliCredential()); + this._client = new(new Uri(TestConfiguration.GetRequiredValue(TestSettings.AzureAIProjectEndpoint)), TestAzureCliCredentials.CreateAzureCliCredential()); this._agent = await this.CreateChatClientAgentAsync(options); } } diff --git a/dotnet/tests/AzureAI.IntegrationTests/AzureAI.IntegrationTests.csproj b/dotnet/tests/AzureAI.IntegrationTests/AzureAI.IntegrationTests.csproj index 83f65051d2..bbe03693ea 100644 --- a/dotnet/tests/AzureAI.IntegrationTests/AzureAI.IntegrationTests.csproj +++ b/dotnet/tests/AzureAI.IntegrationTests/AzureAI.IntegrationTests.csproj @@ -2,6 +2,7 @@ True + True diff --git a/dotnet/tests/AzureAIAgentsPersistent.IntegrationTests/AzureAIAgentsPersistent.IntegrationTests.csproj b/dotnet/tests/AzureAIAgentsPersistent.IntegrationTests/AzureAIAgentsPersistent.IntegrationTests.csproj index 4078342410..9cd72a7e77 100644 --- a/dotnet/tests/AzureAIAgentsPersistent.IntegrationTests/AzureAIAgentsPersistent.IntegrationTests.csproj +++ b/dotnet/tests/AzureAIAgentsPersistent.IntegrationTests/AzureAIAgentsPersistent.IntegrationTests.csproj @@ -2,6 +2,7 @@ True + True diff --git a/dotnet/tests/AzureAIAgentsPersistent.IntegrationTests/AzureAIAgentsPersistentCreateTests.cs b/dotnet/tests/AzureAIAgentsPersistent.IntegrationTests/AzureAIAgentsPersistentCreateTests.cs index f750b5a8e7..6b29bb4b08 100644 --- a/dotnet/tests/AzureAIAgentsPersistent.IntegrationTests/AzureAIAgentsPersistentCreateTests.cs +++ b/dotnet/tests/AzureAIAgentsPersistent.IntegrationTests/AzureAIAgentsPersistentCreateTests.cs @@ -6,7 +6,6 @@ using System.Threading.Tasks; using AgentConformance.IntegrationTests.Support; using Azure.AI.Agents.Persistent; -using Azure.Identity; using Microsoft.Agents.AI; using Microsoft.Extensions.AI; using Shared.IntegrationTests; @@ -15,7 +14,7 @@ namespace AzureAIAgentsPersistent.IntegrationTests; public class AzureAIAgentsPersistentCreateTests { - private readonly PersistentAgentsClient _persistentAgentsClient = new(TestConfiguration.GetRequiredValue(TestSettings.AzureAIProjectEndpoint), new AzureCliCredential()); + private readonly PersistentAgentsClient _persistentAgentsClient = new(TestConfiguration.GetRequiredValue(TestSettings.AzureAIProjectEndpoint), TestAzureCliCredentials.CreateAzureCliCredential()); [Theory] [InlineData("CreateWithChatClientAgentOptionsAsync")] diff --git a/dotnet/tests/AzureAIAgentsPersistent.IntegrationTests/AzureAIAgentsPersistentFixture.cs b/dotnet/tests/AzureAIAgentsPersistent.IntegrationTests/AzureAIAgentsPersistentFixture.cs index 5de4192557..ff5e96c4f1 100644 --- a/dotnet/tests/AzureAIAgentsPersistent.IntegrationTests/AzureAIAgentsPersistentFixture.cs +++ b/dotnet/tests/AzureAIAgentsPersistent.IntegrationTests/AzureAIAgentsPersistentFixture.cs @@ -6,7 +6,6 @@ using AgentConformance.IntegrationTests.Support; using Azure; using Azure.AI.Agents.Persistent; -using Azure.Identity; using Microsoft.Agents.AI; using Microsoft.Extensions.AI; using Shared.IntegrationTests; @@ -96,7 +95,7 @@ public Task DisposeAsync() public async Task InitializeAsync() { - this._persistentAgentsClient = new(TestConfiguration.GetRequiredValue(TestSettings.AzureAIProjectEndpoint), new AzureCliCredential()); + this._persistentAgentsClient = new(TestConfiguration.GetRequiredValue(TestSettings.AzureAIProjectEndpoint), TestAzureCliCredentials.CreateAzureCliCredential()); this._agent = await this.CreateChatClientAgentAsync(); } } diff --git a/dotnet/tests/Microsoft.Agents.AI.DurableTask.IntegrationTests/Microsoft.Agents.AI.DurableTask.IntegrationTests.csproj b/dotnet/tests/Microsoft.Agents.AI.DurableTask.IntegrationTests/Microsoft.Agents.AI.DurableTask.IntegrationTests.csproj index ac4f52e3eb..adc184e510 100644 --- a/dotnet/tests/Microsoft.Agents.AI.DurableTask.IntegrationTests/Microsoft.Agents.AI.DurableTask.IntegrationTests.csproj +++ b/dotnet/tests/Microsoft.Agents.AI.DurableTask.IntegrationTests/Microsoft.Agents.AI.DurableTask.IntegrationTests.csproj @@ -3,6 +3,7 @@ $(TargetFrameworksCore) enable + True diff --git a/dotnet/tests/Microsoft.Agents.AI.DurableTask.IntegrationTests/TestHelper.cs b/dotnet/tests/Microsoft.Agents.AI.DurableTask.IntegrationTests/TestHelper.cs index 295277021b..ba73c7fbe4 100644 --- a/dotnet/tests/Microsoft.Agents.AI.DurableTask.IntegrationTests/TestHelper.cs +++ b/dotnet/tests/Microsoft.Agents.AI.DurableTask.IntegrationTests/TestHelper.cs @@ -2,7 +2,6 @@ using Azure; using Azure.AI.OpenAI; -using Azure.Identity; using Microsoft.Agents.AI.DurableTask.IntegrationTests.Logging; using Microsoft.DurableTask; using Microsoft.DurableTask.Client; @@ -14,6 +13,7 @@ using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Logging; using OpenAI.Chat; +using Shared.IntegrationTests; using Xunit.Abstractions; namespace Microsoft.Agents.AI.DurableTask.IntegrationTests; @@ -166,7 +166,7 @@ internal static ChatClient GetAzureOpenAIChatClient(IConfiguration configuration AzureOpenAIClient client = !string.IsNullOrEmpty(azureOpenAiKey) ? new AzureOpenAIClient(new Uri(azureOpenAiEndpoint), new AzureKeyCredential(azureOpenAiKey)) - : new AzureOpenAIClient(new Uri(azureOpenAiEndpoint), new AzureCliCredential()); + : new AzureOpenAIClient(new Uri(azureOpenAiEndpoint), TestAzureCliCredentials.CreateAzureCliCredential()); return client.GetChatClient(azureOpenAiDeploymentName); } diff --git a/dotnet/tests/Microsoft.Agents.AI.FoundryMemory.IntegrationTests/FoundryMemoryProviderTests.cs b/dotnet/tests/Microsoft.Agents.AI.FoundryMemory.IntegrationTests/FoundryMemoryProviderTests.cs index 4b1838335c..9b3c95c5c2 100644 --- a/dotnet/tests/Microsoft.Agents.AI.FoundryMemory.IntegrationTests/FoundryMemoryProviderTests.cs +++ b/dotnet/tests/Microsoft.Agents.AI.FoundryMemory.IntegrationTests/FoundryMemoryProviderTests.cs @@ -3,7 +3,6 @@ using System; using System.Threading.Tasks; using Azure.AI.Projects; -using Azure.Identity; using Microsoft.Extensions.Configuration; using Shared.IntegrationTests; @@ -41,7 +40,7 @@ public FoundryMemoryProviderTests() if (!string.IsNullOrWhiteSpace(endpoint) && !string.IsNullOrWhiteSpace(memoryStoreName)) { - this._client = new AIProjectClient(new Uri(endpoint), new AzureCliCredential()); + this._client = new AIProjectClient(new Uri(endpoint), TestAzureCliCredentials.CreateAzureCliCredential()); this._memoryStoreName = memoryStoreName; this._deploymentName = deploymentName ?? "gpt-4.1-mini"; } diff --git a/dotnet/tests/Microsoft.Agents.AI.FoundryMemory.IntegrationTests/Microsoft.Agents.AI.FoundryMemory.IntegrationTests.csproj b/dotnet/tests/Microsoft.Agents.AI.FoundryMemory.IntegrationTests/Microsoft.Agents.AI.FoundryMemory.IntegrationTests.csproj index 4bf96a5b35..af184142ca 100644 --- a/dotnet/tests/Microsoft.Agents.AI.FoundryMemory.IntegrationTests/Microsoft.Agents.AI.FoundryMemory.IntegrationTests.csproj +++ b/dotnet/tests/Microsoft.Agents.AI.FoundryMemory.IntegrationTests/Microsoft.Agents.AI.FoundryMemory.IntegrationTests.csproj @@ -2,6 +2,7 @@ True + True diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/FunctionToolAgentProvider.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/FunctionToolAgentProvider.cs index 8198618b65..98243dc4d3 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/FunctionToolAgentProvider.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/FunctionToolAgentProvider.cs @@ -4,7 +4,6 @@ using System.Collections.Generic; using Azure.AI.Projects; using Azure.AI.Projects.OpenAI; -using Azure.Identity; using Microsoft.Extensions.AI; using Microsoft.Extensions.Configuration; using OpenAI.Responses; @@ -25,7 +24,7 @@ protected override async IAsyncEnumerable CreateAgentsAsync(Uri fo AIFunctionFactory.Create(menuPlugin.GetItemPrice), ]; - AIProjectClient aiProjectClient = new(foundryEndpoint, new AzureCliCredential()); + AIProjectClient aiProjectClient = new(foundryEndpoint, TestAzureCliCredentials.CreateAzureCliCredential()); yield return await aiProjectClient.CreateAgentAsync( diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/MarketingAgentProvider.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/MarketingAgentProvider.cs index f84a40ae23..693d99b638 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/MarketingAgentProvider.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/MarketingAgentProvider.cs @@ -4,7 +4,6 @@ using System.Collections.Generic; using Azure.AI.Projects; using Azure.AI.Projects.OpenAI; -using Azure.Identity; using Microsoft.Extensions.Configuration; using Shared.Foundry; using Shared.IntegrationTests; @@ -15,7 +14,7 @@ internal sealed class MarketingAgentProvider(IConfiguration configuration) : Age { protected override async IAsyncEnumerable CreateAgentsAsync(Uri foundryEndpoint) { - AIProjectClient aiProjectClient = new(foundryEndpoint, new AzureCliCredential()); + AIProjectClient aiProjectClient = new(foundryEndpoint, TestAzureCliCredentials.CreateAzureCliCredential()); yield return await aiProjectClient.CreateAgentAsync( diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/MathChatAgentProvider.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/MathChatAgentProvider.cs index 92cea7d76a..91d63404bd 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/MathChatAgentProvider.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/MathChatAgentProvider.cs @@ -4,7 +4,6 @@ using System.Collections.Generic; using Azure.AI.Projects; using Azure.AI.Projects.OpenAI; -using Azure.Identity; using Microsoft.Extensions.Configuration; using Shared.Foundry; using Shared.IntegrationTests; @@ -15,7 +14,7 @@ internal sealed class MathChatAgentProvider(IConfiguration configuration) : Agen { protected override async IAsyncEnumerable CreateAgentsAsync(Uri foundryEndpoint) { - AIProjectClient aiProjectClient = new(foundryEndpoint, new AzureCliCredential()); + AIProjectClient aiProjectClient = new(foundryEndpoint, TestAzureCliCredentials.CreateAzureCliCredential()); yield return await aiProjectClient.CreateAgentAsync( diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/PoemAgentProvider.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/PoemAgentProvider.cs index 8882709a03..1b79e4e25e 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/PoemAgentProvider.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/PoemAgentProvider.cs @@ -4,7 +4,6 @@ using System.Collections.Generic; using Azure.AI.Projects; using Azure.AI.Projects.OpenAI; -using Azure.Identity; using Microsoft.Extensions.Configuration; using Shared.Foundry; using Shared.IntegrationTests; @@ -15,7 +14,7 @@ internal sealed class PoemAgentProvider(IConfiguration configuration) : AgentPro { protected override async IAsyncEnumerable CreateAgentsAsync(Uri foundryEndpoint) { - AIProjectClient aiProjectClient = new(foundryEndpoint, new AzureCliCredential()); + AIProjectClient aiProjectClient = new(foundryEndpoint, TestAzureCliCredentials.CreateAzureCliCredential()); yield return await aiProjectClient.CreateAgentAsync( diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/TestAgentProvider.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/TestAgentProvider.cs index 03b201d440..dcb09a4798 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/TestAgentProvider.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/TestAgentProvider.cs @@ -4,7 +4,6 @@ using System.Collections.Generic; using Azure.AI.Projects; using Azure.AI.Projects.OpenAI; -using Azure.Identity; using Microsoft.Extensions.Configuration; using Shared.Foundry; using Shared.IntegrationTests; @@ -15,7 +14,7 @@ internal sealed class TestAgentProvider(IConfiguration configuration) : AgentPro { protected override async IAsyncEnumerable CreateAgentsAsync(Uri foundryEndpoint) { - AIProjectClient aiProjectClient = new(foundryEndpoint, new AzureCliCredential()); + AIProjectClient aiProjectClient = new(foundryEndpoint, TestAzureCliCredentials.CreateAzureCliCredential()); yield return await aiProjectClient.CreateAgentAsync( diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/VisionAgentProvider.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/VisionAgentProvider.cs index 1c09ea9247..0d95342264 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/VisionAgentProvider.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/VisionAgentProvider.cs @@ -4,7 +4,6 @@ using System.Collections.Generic; using Azure.AI.Projects; using Azure.AI.Projects.OpenAI; -using Azure.Identity; using Microsoft.Extensions.Configuration; using Shared.Foundry; using Shared.IntegrationTests; @@ -15,7 +14,7 @@ internal sealed class VisionAgentProvider(IConfiguration configuration) : AgentP { protected override async IAsyncEnumerable CreateAgentsAsync(Uri foundryEndpoint) { - AIProjectClient aiProjectClient = new(foundryEndpoint, new AzureCliCredential()); + AIProjectClient aiProjectClient = new(foundryEndpoint, TestAzureCliCredentials.CreateAzureCliCredential()); yield return await aiProjectClient.CreateAgentAsync( diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/AzureAgentProviderTest.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/AzureAgentProviderTest.cs index da3f6f2fd5..7ec01b6588 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/AzureAgentProviderTest.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/AzureAgentProviderTest.cs @@ -2,9 +2,9 @@ using System.Linq; using System.Threading.Tasks; -using Azure.Identity; using Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests.Framework; using Microsoft.Extensions.AI; +using Shared.IntegrationTests; using Xunit.Abstractions; namespace Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests; @@ -15,7 +15,7 @@ public sealed class AzureAgentProviderTest(ITestOutputHelper output) : Integrati public async Task ConversationTestAsync() { // Arrange - AzureAgentProvider provider = new(this.TestEndpoint, new AzureCliCredential()); + AzureAgentProvider provider = new(this.TestEndpoint, TestAzureCliCredentials.CreateAzureCliCredential()); // Act string conversationId = await provider.CreateConversationAsync(); // Assert diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Framework/IntegrationTest.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Framework/IntegrationTest.cs index 517dba9e4e..6cabd4983b 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Framework/IntegrationTest.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Framework/IntegrationTest.cs @@ -4,7 +4,6 @@ using System.Collections.Generic; using System.Reflection; using System.Threading.Tasks; -using Azure.Identity; using Microsoft.Agents.AI.Workflows.Declarative.PowerFx; using Microsoft.Agents.ObjectModel; using Microsoft.Extensions.AI; @@ -68,7 +67,7 @@ protected async ValueTask CreateOptionsAsync(bool ex protected async ValueTask CreateOptionsAsync(bool externalConversation, IMcpToolHandler? mcpToolProvider, params IEnumerable functionTools) { AzureAgentProvider agentProvider = - new(this.TestEndpoint, new AzureCliCredential()) + new(this.TestEndpoint, TestAzureCliCredentials.CreateAzureCliCredential()) { Functions = functionTools, }; diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/MediaInputTest.cs b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/MediaInputTest.cs index da30db6f98..244e4f0eb3 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/MediaInputTest.cs +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/MediaInputTest.cs @@ -4,11 +4,11 @@ using System.IO; using System.Threading.Tasks; using Azure.AI.Projects; -using Azure.Identity; using Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests.Agents; using Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests.Framework; using Microsoft.Extensions.AI; using OpenAI.Files; +using Shared.IntegrationTests; using Xunit.Abstractions; namespace Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests; @@ -77,7 +77,7 @@ public async Task ValidateFileUploadAsync(string fileSource, string documentName { // Arrange byte[] fileData = ReadLocalFile(fileSource); - AIProjectClient client = new(this.TestEndpoint, new AzureCliCredential()); + AIProjectClient client = new(this.TestEndpoint, TestAzureCliCredentials.CreateAzureCliCredential()); using MemoryStream contentStream = new(fileData); OpenAIFileClient fileClient = client.GetProjectOpenAIClient().GetOpenAIFileClient(); OpenAIFile fileInfo = await fileClient.UploadFileAsync(contentStream, documentName, FileUploadPurpose.Assistants); diff --git a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests.csproj b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests.csproj index 92e09fcebb..d37dd58c8c 100644 --- a/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests.csproj +++ b/dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests.csproj @@ -5,6 +5,7 @@ true true true + True