using XFEEDToolBox.Core.Galaxy;
using XFEEDToolBox.Core.Models;
using XFEExtension.NetCore.XUnit.Attributes;
namespace XFEEDToolBox.Test;
[TestFixture]
public class GalaxyCatalogueRangeInputTests
{
[Test] public void AbsoluteWorldClampUsesOriginalAxisLimitsAndFloatQuantization()
{
var origin = new Coordinates(49985, 40985, 24105);
Check.Equal(new Coordinates(100 - origin.X, 81818 - origin.Y, 163738 - origin.Z),
GalaxyOriginalCatalogueLod.ClampCentre(new(-999999, 999999, 999999), origin));
var fine = new Coordinates(.00001, .00001, .00001);
Check.Equal(new Coordinates(0, 0, 0), GalaxyOriginalCatalogueLod.ClampCentre(fine, origin));
}
[Test] public void OrdinaryRangeFadeUsesTheUnclampedRawInputAndNegativeFiveHundredLength()
{
var origin = new Coordinates(49985, 40985, 24105);
foreach (var (distance, expected) in new[] { (0d, 1d), (500d, 1d), (750d, .5d), (1000d, 0d), (2000d, 0d) })
{
Check.That(GalaxyOriginalCatalogueLod.TryOrdinaryModifier(new(distance, 0, 0), origin, false, origin, false, null, out var actual));
Check.Equal(expected, actual);
}
Check.That(GalaxyOriginalCatalogueLod.TryOrdinaryModifier(new(-1000, 0, 0), new(0, 0, 0), false, new(-1000, 0, 0), false, null, out var raw));
Check.Equal(1d, raw);
}
[Test] public void MissingRuntimeInputsAndTheDebugCallbackAreNotOrdinaryCoverage()
{
var origin = new Coordinates(49985, 40985, 24105); var input = new Coordinates(0, 0, 0);
Check.That(!GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, null, origin, false, 0, out _));
Check.That(!GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, false, null, false, 0, out _));
Check.That(!GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, false, origin, null, 0, out _));
Check.That(!GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, false, origin, true, null, out _));
Check.That(!GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, false, origin, true, 2, out _));
Check.That(GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, false, origin, true, 0, out var ordinary));
Check.Equal(1d, ordinary);
Check.That(GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, true, null, null, null, out var small));
Check.Equal(1d, small);
}
}
using XFEEDToolBox.Core.Galaxy;
using XFEEDToolBox.Core.Models;
using XFEExtension.NetCore.XUnit.Attributes;
namespace XFEEDToolBox.Test;
[TestFixture]
public class GalaxyCatalogueRangeInputTests
{
[Test] public void AbsoluteWorldClampUsesOriginalAxisLimitsAndFloatQuantization()
{
var origin = new Coordinates(49985, 40985, 24105);
Check.Equal(new Coordinates(100 - origin.X, 81818 - origin.Y, 163738 - origin.Z),
GalaxyOriginalCatalogueLod.ClampCentre(new(-999999, 999999, 999999), origin));
var fine = new Coordinates(.00001, .00001, .00001);
Check.Equal(new Coordinates(0, 0, 0), GalaxyOriginalCatalogueLod.ClampCentre(fine, origin));
}
[Test] public void OrdinaryRangeFadeUsesTheUnclampedRawInputAndNegativeFiveHundredLength()
{
var origin = new Coordinates(49985, 40985, 24105);
foreach (var (distance, expected) in new[] { (0d, 1d), (500d, 1d), (750d, .5d), (1000d, 0d), (2000d, 0d) })
{
Check.That(GalaxyOriginalCatalogueLod.TryOrdinaryModifier(new(distance, 0, 0), origin, false, origin, false, null, out var actual));
Check.Equal(expected, actual);
}
Check.That(GalaxyOriginalCatalogueLod.TryOrdinaryModifier(new(-1000, 0, 0), new(0, 0, 0), false, new(-1000, 0, 0), false, null, out var raw));
Check.Equal(1d, raw);
}
[Test] public void MissingRuntimeInputsAndTheDebugCallbackAreNotOrdinaryCoverage()
{
var origin = new Coordinates(49985, 40985, 24105); var input = new Coordinates(0, 0, 0);
Check.That(!GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, null, origin, false, 0, out _));
Check.That(!GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, false, null, false, 0, out _));
Check.That(!GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, false, origin, null, 0, out _));
Check.That(!GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, false, origin, true, null, out _));
Check.That(!GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, false, origin, true, 2, out _));
Check.That(GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, false, origin, true, 0, out var ordinary));
Check.Equal(1d, ordinary);
Check.That(GalaxyOriginalCatalogueLod.TryOrdinaryModifier(input, origin, true, null, null, null, out var small));
Check.Equal(1d, small);
}
}