52 lines
1.3 KiB
C#
52 lines
1.3 KiB
C#
using NUnit.Framework;
|
|
using UnityEngine;
|
|
using BaseGames.AI;
|
|
|
|
namespace BaseGames.Tests.EditMode.AI
|
|
{
|
|
public class BlackboardTests
|
|
{
|
|
[Test]
|
|
public void SetThenGet_ReturnsValue()
|
|
{
|
|
var bb = new Blackboard();
|
|
bb.Set("lastKnown", new Vector2(3f, 4f));
|
|
Assert.AreEqual(new Vector2(3f, 4f), bb.Get<Vector2>("lastKnown"));
|
|
}
|
|
|
|
[Test]
|
|
public void Get_MissingKey_ReturnsDefault()
|
|
{
|
|
var bb = new Blackboard();
|
|
Assert.AreEqual(0f, bb.Get<float>("nope"));
|
|
}
|
|
|
|
[Test]
|
|
public void Keys_EnumeratesAllSetKeys()
|
|
{
|
|
var bb = new Blackboard();
|
|
bb.Set("a", 1);
|
|
bb.Set("b", 2);
|
|
CollectionAssert.AreEquivalent(new[] { "a", "b" }, bb.Keys);
|
|
}
|
|
|
|
[Test]
|
|
public void Clear_RemovesAll()
|
|
{
|
|
var bb = new Blackboard();
|
|
bb.Set("a", 1);
|
|
bb.Clear();
|
|
CollectionAssert.IsEmpty(bb.Keys);
|
|
}
|
|
|
|
[Test]
|
|
public void Snapshot_ReturnsKeyToStringMap_ForIntrospection()
|
|
{
|
|
var bb = new Blackboard();
|
|
bb.Set("hp", 0.5f);
|
|
var snap = bb.Snapshot();
|
|
Assert.AreEqual("0.5", snap["hp"]);
|
|
}
|
|
}
|
|
}
|