using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Azimuth;
using Azimuth.Splines;
using Azimuth.Shapes;

namespace Azimuth.UnitTests.Splines
{
    public class ConstantSplineTests : UnitTestSharp.TestFixture
    {
        public void ScalarTest()
        {
            var spline = new ConstantSpline<Scalar>(20);

            CheckEqual(20, spline.EvaluateAt(1000));
        }

        public void VectorTest()
        {
            var spline = new ConstantSpline<Vector>(new Vector(10, 20));

            CheckEqual(new Vector(10, 20), spline.EvaluateAt(1000));
        }

        public void AABBScalarTest()
        {
            var spline = new ConstantSpline<Scalar>(20);

            CheckEqual(new AABB<Scalar>(20, 20), spline.GetAABB(new Interval(0,1000)));
        }

        public void AABBVectorTest()
        {
            var spline = new ConstantSpline<Vector>(new Vector(10,20));

            CheckEqual(new AABB<Vector>(new Vector(10, 20), new Vector(10, 20)), spline.GetAABB(new Interval(0,1000)));
        }
    }
}