PkmnLib.NET/PkmnLib.Tests/DataTests/MoveDataTests.cs

30 lines
923 B
C#

using PkmnLib.Dynamic.ScriptHandling;
using PkmnLib.Tests.Integration;
namespace PkmnLib.Tests.DataTests;
public class MoveDataTests
{
[Test]
public async Task AllMoveEffectsHaveValidScripts()
{
var library = LibraryHelpers.LoadLibrary();
var moveLibrary = library.StaticLibrary.Moves;
foreach (var move in moveLibrary)
{
if (move.SecondaryEffect == null)
continue;
var scriptName = move.SecondaryEffect.Name;
try
{
await Assert.That(library.ScriptResolver.TryResolve(ScriptCategory.Move, scriptName,
move.SecondaryEffect.Parameters, out var script)).IsTrue();
}
catch (Exception e)
{
throw new AggregateException($"Failed to resolve script for move {move.Name} with effect {scriptName}", e);
}
}
}
}