public void ShouldConstructPolynomialWithSpecifiedSingleMultiplicityRoots(InterpolationPolynomialBuilderTestCase testCase)
        {
            // When
            var polynomial = _polynomialBuilder.Build(testCase.DegreeWeight, testCase.MaxWeightedDegree, testCase.Roots, 1);

            // Then
            foreach (var(xValue, yValue) in testCase.Roots)
            {
                Assert.Equal(0, polynomial.Evaluate(xValue, yValue).Representation);
            }
        }
        public void ShouldConstructPolynomialWithSpecifiedSingleMultiplicityRoots(Tuple <int, int> degreeWeight, int maxWeightedDegree,
                                                                                  Tuple <FieldElement, FieldElement>[] roots)
        {
            // When
            var polynomial = _polynomialBuilder.Build(degreeWeight, maxWeightedDegree, roots, 1);

            // Then
            foreach (var root in roots)
            {
                Assert.Equal(0, polynomial.Evaluate(root.Item1, root.Item2).Representation);
            }
        }