using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace TestyJednostkoweRozwiązywacza
{
    [TestClass]
    public class UnitTest1
    {
        [TestMethod]
        public void TestMethod1()
        {
            RównaniaKwadratowe2.RozwiązywaczRównańKwadratowych rrk = new RównaniaKwadratowe2.RozwiązywaczRównańKwadratowych(1, -2, 1);
            Assert.AreEqual(1, rrk.X1);
            Assert.AreEqual(1, rrk.X2);
        }

        [TestMethod]
        public void TestMethod2()
        {

            for (int i = 0; i < 1000; ++i)
            {
                Random r = new Random();
                double a = r.NextDouble();
                double x1 = r.NextDouble();
                double x2 = r.NextDouble();
                double b = -a * (x1 + x2);
                double c = a * x1 * x2;
                RównaniaKwadratowe2.RozwiązywaczRównańKwadratowych rrk = new RównaniaKwadratowe2.RozwiązywaczRównańKwadratowych(a, b, c);
                Assert.AreEqual(Math.Min(x1, x2), rrk.X1, 1E-8);
                Assert.AreEqual(Math.Max(x1, x2), rrk.X2, 1E-8);
            }
        }
    }
}
