diff --git a/poincare/Makefile b/poincare/Makefile index aea534ca3..52e07d7dd 100644 --- a/poincare/Makefile +++ b/poincare/Makefile @@ -174,6 +174,7 @@ tests_src += $(addprefix poincare/test/,\ print_float.cpp\ print_int.cpp\ rational.cpp\ + regularized_incomplete_beta_function.cpp \ simplification.cpp\ ) diff --git a/poincare/test/regularized_incomplete_beta_function.cpp b/poincare/test/regularized_incomplete_beta_function.cpp new file mode 100644 index 000000000..7f50fd747 --- /dev/null +++ b/poincare/test/regularized_incomplete_beta_function.cpp @@ -0,0 +1,19 @@ +#include +#include +#include +#include + +using namespace Poincare; + +void assert_regularized_incomplete_beta_function_is(double a, double b, double x, double result) { + double r = RegularizedIncompleteBetaFunction(a, b, x); + quiz_assert(std::abs(r - result) < FLT_EPSILON/10.0); +} + +QUIZ_CASE(regularized_incomplete_beta_function) { + assert_regularized_incomplete_beta_function_is(1.0, 2.0, 0.0, 0.0); + assert_regularized_incomplete_beta_function_is(1.0, 2.0, 1.0, 1.0); + assert_regularized_incomplete_beta_function_is(1.7, 0.9, 0.3, 0.114276013523787293056995598423812417112640756984394176432); + assert_regularized_incomplete_beta_function_is(7.3, 3.9, 0.4, 0.042393671346062170259328642902287422849467242046012782022); + assert_regularized_incomplete_beta_function_is(128.4, 31.5, 0.8, 0.446264065069106243051390524472702916228137487657780205030); +}