// Copyright (c) Microsoft. All rights reserved.
using System;
using System.Collections.Generic;
namespace Foundry.Hosting.IntegrationTests.Fixtures;
///
/// Provisions a hosted agent that runs the test container in IT_SCENARIO=memory mode.
/// Used by tests that exercise
/// running inside the Foundry hosted agent. The memory store name is randomised per fixture
/// instance so concurrent test runs do not share state.
///
public sealed class MemoryHostedAgentFixture : HostedAgentFixture
{
protected override string ScenarioName => "memory";
///
/// Memory store name passed to the test container via IT_MEMORY_STORE_ID so that each
/// fixture instance gets a fresh, isolated bucket of memories.
///
public string MemoryStoreId { get; } = $"it-memory-{Guid.NewGuid():N}";
protected override void ConfigureEnvironment(IDictionary environment)
{
environment["IT_MEMORY_STORE_ID"] = this.MemoryStoreId;
}
}