namespace Cthangover.Mods.Items.Tests { using System.Collections.Generic; using Cthangover.Core.Actions; using Cthangover.Core.Items; using Cthangover.Core.Mods; /// Action context for scenario action tests: dialog variables and an inventory, no other services. public class FakeActionContext : IActionContext { /// Dialog variables returned by . public Dictionary Params { get; } = new(); /// Warnings the action logged. public List Warnings { get; } = new(); public IQuestService Quests => null; public ICharacterService Character => null; public ILightingService Lighting => null; public ISceneNodeService Scene => null; public IModRegistry ModRegistry => null; public IInventory Inventory { get; set; } public IMapZoneService Map => null; public string GetParam(string name) => Params.TryGetValue(name, out var value) ? value : null; public void Log(string category, string message) { } public void LogWarning(string category, string message) => Warnings.Add(message); } }