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); }