|
@ -15,9 +15,9 @@ void tearDown(void) |
|
|
void test_DoubleBase_ForPositiveExponent(void){ |
|
|
void test_DoubleBase_ForPositiveExponent(void){ |
|
|
int r1, r2, r3; |
|
|
int r1, r2, r3; |
|
|
|
|
|
|
|
|
r1 = expI(2.0, -2.0); |
|
|
|
|
|
r2 = expI(3.0, -3.0); |
|
|
|
|
|
r3 = expI(4.0, 5.0); |
|
|
|
|
|
|
|
|
r1 = p(2.0, -2.0); |
|
|
|
|
|
r2 = p(3.0, -3.0); |
|
|
|
|
|
r3 = p(4.0, 5.0); |
|
|
|
|
|
|
|
|
TEST_ASSERT_EQUAL_INT(4.0, r1); |
|
|
TEST_ASSERT_EQUAL_INT(4.0, r1); |
|
|
TEST_ASSERT_EQUAL_INT(-27.0, r2); |
|
|
TEST_ASSERT_EQUAL_INT(-27.0, r2); |
|
@ -27,9 +27,9 @@ void test_DoubleBase_ForPositiveExponent(void){ |
|
|
void test_DoubleBase_ForNegativeExponent(void){ |
|
|
void test_DoubleBase_ForNegativeExponent(void){ |
|
|
float r1, r2, r3; |
|
|
float r1, r2, r3; |
|
|
|
|
|
|
|
|
r1 = expIN(-1.0, 2.0); |
|
|
|
|
|
r2 = expIN(-3.0, -3.0); |
|
|
|
|
|
r3 = expIN(-2.0, -2.0); |
|
|
|
|
|
|
|
|
r1 = powerD(-1.0, 2.0); |
|
|
|
|
|
r2 = powerD(-3.0, -3.0); |
|
|
|
|
|
r3 = powerD(-2.0, -2.0); |
|
|
|
|
|
|
|
|
TEST_ASSERT_EQUAL_FLOAT(0.5, r1); |
|
|
TEST_ASSERT_EQUAL_FLOAT(0.5, r1); |
|
|
TEST_ASSERT_EQUAL_FLOAT(-0.0370370373, r2); |
|
|
TEST_ASSERT_EQUAL_FLOAT(-0.0370370373, r2); |
|
@ -39,9 +39,9 @@ void test_DoubleBase_ForNegativeExponent(void){ |
|
|
void test_DoubleBase_for_positive_decimal_exponent(void){ |
|
|
void test_DoubleBase_for_positive_decimal_exponent(void){ |
|
|
float r1, r2, r3; |
|
|
float r1, r2, r3; |
|
|
|
|
|
|
|
|
r1 = expIN(0.45, 3.0); |
|
|
|
|
|
r2 = expIN(0.5, 9.0); |
|
|
|
|
|
r3 = expIN(0.5, 2.0); |
|
|
|
|
|
|
|
|
r1 = powerD(0.45, 3.0); |
|
|
|
|
|
r2 = powerD(0.5, 9.0); |
|
|
|
|
|
r3 = powerD(0.5, 2.0); |
|
|
|
|
|
|
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 1.639474, r1); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 1.639474, r1); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 3.0, r2); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 3.0, r2); |
|
@ -51,9 +51,9 @@ void test_DoubleBase_for_positive_decimal_exponent(void){ |
|
|
void test_DoubleDecimalBase_for_positive_decimal_exponent(void){ |
|
|
void test_DoubleDecimalBase_for_positive_decimal_exponent(void){ |
|
|
float r1, r2, r3; |
|
|
float r1, r2, r3; |
|
|
|
|
|
|
|
|
r1 = expIN(0.31, 0.413); |
|
|
|
|
|
r2 = expIN(0.5, 3.13432); |
|
|
|
|
|
r3 = expIN(0.124, 10.1231); |
|
|
|
|
|
|
|
|
r1 = powerD(0.31, 0.413); |
|
|
|
|
|
r2 = powerD(0.5, 3.13432); |
|
|
|
|
|
r3 = powerD(0.124, 10.1231); |
|
|
|
|
|
|
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 0.760229, r1); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 0.760229, r1); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 1.770401, r2); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 1.770401, r2); |
|
@ -63,9 +63,9 @@ void test_DoubleDecimalBase_for_positive_decimal_exponent(void){ |
|
|
void test_DoubleBase_for_negative_decimal_exponent(void){ |
|
|
void test_DoubleBase_for_negative_decimal_exponent(void){ |
|
|
float r1, r2, r3; |
|
|
float r1, r2, r3; |
|
|
|
|
|
|
|
|
r1 = expIN(-0.125, 3.0); |
|
|
|
|
|
r2 = expIN(-0.5, 2.0); |
|
|
|
|
|
r3 = expIN(-0.12923, 10.0); |
|
|
|
|
|
|
|
|
r1 = powerD(-0.125, 3.0); |
|
|
|
|
|
r2 = powerD(-0.5, 2.0); |
|
|
|
|
|
r3 = powerD(-0.12923, 10.0); |
|
|
|
|
|
|
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 0.871685, r1); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 0.871685, r1); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 0.707106, r2); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 0.707106, r2); |
|
@ -75,9 +75,9 @@ void test_DoubleBase_for_negative_decimal_exponent(void){ |
|
|
void test_DoubleDecimalBase_for_negative_decimal_exponent(void){ |
|
|
void test_DoubleDecimalBase_for_negative_decimal_exponent(void){ |
|
|
float r1, r2, r3; |
|
|
float r1, r2, r3; |
|
|
|
|
|
|
|
|
r1 = expIN(-0.5, 6.2315); |
|
|
|
|
|
r2 = expIN(-0.1937, 9.2309); |
|
|
|
|
|
r3 = expIN(-2.2145, 22.9983); |
|
|
|
|
|
|
|
|
r1 = powerD(-0.5, 6.2315); |
|
|
|
|
|
r2 = powerD(-0.1937, 9.2309); |
|
|
|
|
|
r3 = powerD(-2.2145, 22.9983); |
|
|
|
|
|
|
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 0.400593, r1); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 0.400593, r1); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 0.650177, r2); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 0.650177, r2); |
|
@ -87,11 +87,11 @@ void test_DoubleDecimalBase_for_negative_decimal_exponent(void){ |
|
|
void test_exponent_edge_case(void){ |
|
|
void test_exponent_edge_case(void){ |
|
|
float r1, r2, r3, r4, r5; |
|
|
float r1, r2, r3, r4, r5; |
|
|
|
|
|
|
|
|
r1 = expIN(0, 2); |
|
|
|
|
|
r2 = expIN(0, 0); |
|
|
|
|
|
r3 = expIN(2, 0); |
|
|
|
|
|
r4 = expIN(-3, 0); |
|
|
|
|
|
r5 = expIN(0.5, -3); |
|
|
|
|
|
|
|
|
r1 = powerD(0, 2); |
|
|
|
|
|
r2 = powerD(0, 0); |
|
|
|
|
|
r3 = powerD(2, 0); |
|
|
|
|
|
r4 = powerD(-3, 0); |
|
|
|
|
|
r5 = powerD(0.5, -3); |
|
|
|
|
|
|
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 1.0, r1); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 1.0, r1); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 1.0, r2); |
|
|
TEST_ASSERT_DOUBLE_WITHIN(0.0001, 1.0, r2); |
|
|