51 lines
1.5 KiB
C#
51 lines
1.5 KiB
C#
using System;
|
|
using NUnit.Framework;
|
|
using PkmnLibSharp.StaticData;
|
|
using PkmnLibSharp.StaticData.Libraries;
|
|
|
|
namespace PkmnLibRSharpTests.StaticData.Libraries
|
|
{
|
|
public class AbilityLibraryTests
|
|
{
|
|
[Test]
|
|
public void Create()
|
|
{
|
|
using var lib = new AbilityLibrary(0);
|
|
Assert.AreEqual(0, lib.Count);
|
|
}
|
|
|
|
[Test]
|
|
public void CreateAndAdd()
|
|
{
|
|
using var lib = new AbilityLibrary(1);
|
|
Assert.AreEqual(0, lib.Count);
|
|
using var ability = new Ability("testAbility", "effect", Array.Empty<EffectParameter>());
|
|
lib.Add("foobar", ability);
|
|
Assert.AreEqual(1, lib.Count);
|
|
Assert.AreEqual("testAbility", lib["foobar"].Name);
|
|
}
|
|
|
|
[Test]
|
|
public void CreateAddIterate()
|
|
{
|
|
using var lib = new AbilityLibrary(10);
|
|
Assert.AreEqual(0, lib.Count);
|
|
for (ushort i = 0; i < 10; i++)
|
|
{
|
|
using var item = new Ability(i.ToString(), "effect", Array.Empty<EffectParameter>());
|
|
lib.Add(i + "_key", item);
|
|
}
|
|
|
|
Assert.AreEqual(10, lib.Count);
|
|
var index = 0;
|
|
foreach (var kv in lib)
|
|
{
|
|
Assert.AreEqual(kv.Key, index + "_key");
|
|
Assert.AreEqual(kv.Value.Name, index.ToString());
|
|
index++;
|
|
}
|
|
|
|
Assert.AreEqual(10, index);
|
|
}
|
|
}
|
|
} |