| Line | Branch | Decision | Exec | Source |
|---|---|---|---|---|
| 1 | #include <rusefi/rusefi_math.h> | |||
| 2 | ||||
| 3 | #include <gtest/gtest.h> | |||
| 4 | #include <cmath> | |||
| 5 | ||||
| 6 | 4 | TEST(Util_Math, ExpTaylor) | ||
| 7 | { | |||
| 8 | // test from -2 < x < 0 | |||
| 9 |
2/2✓ Branch 0 taken 41 times.
✓ Branch 1 taken 1 time.
|
2/2✓ Decision 'true' taken 41 times.
✓ Decision 'false' taken 1 time.
|
42 | for(float x = -2; x < 0; x += 0.05) |
| 10 | { | |||
| 11 | // Compare taylor to libc implementation | |||
| 12 |
3/7✓ Branch 2 taken 41 times.
✓ Branch 5 taken 41 times.
✗ Branch 8 not taken.
✓ Branch 9 taken 41 times.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 20 not taken.
|
41 | EXPECT_NEAR(expf_taylor(x), expf(x), 0.01f); | |
| 13 | } | |||
| 14 | 1 | } | ||
| 15 | ||||
| 16 | 4 | TEST(Util_Math, clampf) { | ||
| 17 | // off scale low | |||
| 18 |
3/7✓ Branch 4 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 time.
✗ Branch 16 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_EQ(clampF(10, 5, 20), 10); | |
| 19 |
3/7✓ Branch 4 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 time.
✗ Branch 16 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_EQ(clampF(-10, -50, 10), -10); | |
| 20 | ||||
| 21 | // in range (unclamped) | |||
| 22 |
3/7✓ Branch 4 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 time.
✗ Branch 16 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_EQ(clampF(10, 15, 20), 15); | |
| 23 |
3/7✓ Branch 4 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 time.
✗ Branch 16 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_EQ(clampF(-10, -5, 10), -5); | |
| 24 | ||||
| 25 | // off scale high | |||
| 26 |
3/7✓ Branch 4 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 time.
✗ Branch 16 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_EQ(clampF(10, 25, 20), 20); | |
| 27 |
3/7✓ Branch 4 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 time.
✗ Branch 16 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_EQ(clampF(-10, 50, 10), 10); | |
| 28 | 1 | } | ||
| 29 | ||||
| 30 | 4 | TEST(Util_Math, tanf_taylor) { | ||
| 31 | // Function is only specified from [0, pi/2) ish, so test that range | |||
| 32 |
2/2✓ Branch 1 taken 15 times.
✓ Branch 2 taken 1 time.
|
2/2✓ Decision 'true' taken 15 times.
✓ Decision 'false' taken 1 time.
|
16 | for (float i = 0; i < 1.5; i += 0.1f) |
| 33 | { | |||
| 34 | // Compare to libc implementation | |||
| 35 |
3/9✓ Branch 2 taken 15 times.
✓ Branch 5 taken 15 times.
✗ Branch 8 not taken.
✓ Branch 9 taken 15 times.
✗ Branch 12 not taken.
✗ Branch 15 not taken.
✗ Branch 18 not taken.
✗ Branch 23 not taken.
✗ Branch 26 not taken.
|
15 | EXPECT_NEAR(tanf_taylor(i), tanf(i), 0.05f) << "I = " << i; | |
| 36 | } | |||
| 37 | 1 | } | ||
| 38 |