mirror of
https://github.com/microsoft/agent-framework.git
synced 2026-06-16 21:04:09 +08:00
30 lines
929 B
C#
30 lines
929 B
C#
// Copyright (c) Microsoft. All rights reserved.
|
|
|
|
using System;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace AgentConformance.IntegrationTests;
|
|
|
|
/// <summary>
|
|
/// Base class for all test classes used for testing agents.
|
|
/// </summary>
|
|
/// <typeparam name="TAgentFixture">The type of the agent fixture used in these tests.</typeparam>
|
|
/// <param name="createAgentFixture">Used to create a new fixture for this test suite.</param>
|
|
public abstract class AgentTests<TAgentFixture>(Func<TAgentFixture> createAgentFixture) : IAsyncLifetime
|
|
where TAgentFixture : IAgentFixture
|
|
{
|
|
protected TAgentFixture Fixture { get; private set; } = default!;
|
|
|
|
public async ValueTask InitializeAsync()
|
|
{
|
|
this.Fixture = createAgentFixture();
|
|
await this.Fixture.InitializeAsync();
|
|
}
|
|
|
|
public async ValueTask DisposeAsync()
|
|
{
|
|
GC.SuppressFinalize(this);
|
|
await this.Fixture.DisposeAsync();
|
|
}
|
|
}
|