public async Task FunctionRootWithCustomFunctionsReturnsCorectValue()
        {
            //arrange
            double CustomFunc(double x)
            {
                return(x * x * x);
            }

            var customFuncStr          = @"
            static double CustomFunc(double x)
            {
                return x * x * x;
            }
";
            Func <double, double> func = x => 1 - x - CustomFunc(x);
            var funcStr = "1 - x - CustomFunc(x)";

            var  a       = -15;
            var  b       = 15;
            uint n       = 100;
            var  epsilon = 1e-6;

            // Act
            var response = await _client.GetAsync($@"/api/numerical-calculations/function-root/{Uri.EscapeDataString(Strings.Brent_s_method)}/{funcStr}/{a}/{b}/{epsilon}/{n}/{Uri.EscapeDataString(customFuncStr)}");

            var responseString = await response.Content.ReadAsStringAsync();

            // Assert
            response.EnsureSuccessStatusCode();
            var mathString = FunctionRoot.BrentMethod(func, a, b, epsilon, n).ToMathString();

            Assert.AreEqual(mathString, responseString);
        }
        public async Task FunctionRootReturnsCorectValue()
        {
            //arrange
            Func <double, double> func = x => 1 - x;
            var  funcStr = "1-x";
            var  a       = -5;
            var  b       = 5;
            uint n       = 100;
            var  epsilon = 1e-6;

            // Act
            var response = await _client.GetAsync($@"/api/numerical-calculations/function-root/{Uri.EscapeDataString(Strings.secant_method)}/{funcStr}/{a}/{b}/{epsilon}/{n}");

            var responseString = await response.Content.ReadAsStringAsync();

            // Assert
            response.EnsureSuccessStatusCode();
            Assert.AreEqual(FunctionRoot.secantMethod(func, a, b, epsilon, n).ToMathString(), responseString);
        }