| 486 | |
| 487 | template<typename T> |
| 488 | void test_scalar_multiply_impl() { |
| 489 | T a(1.5f); |
| 490 | |
| 491 | // fp * scalar |
| 492 | T b = a * 2; |
| 493 | FL_CHECK_EQ(b.to_int(), 3); |
| 494 | FL_CHECK_EQ(b.raw(), a.raw() * 2); |
| 495 | |
| 496 | // scalar * fp (commutative friend) |
| 497 | T c = 2 * a; |
| 498 | FL_CHECK_EQ(c.raw(), b.raw()); |
| 499 | |
| 500 | // Multiply by 1 |
| 501 | FL_CHECK_EQ((a * 1).raw(), a.raw()); |
| 502 | |
| 503 | // Multiply by 0 |
| 504 | FL_CHECK_EQ((a * 0).raw(), raw_t<T>(0)); |
| 505 | } |
| 506 | |
| 507 | template<typename T> |
| 508 | void test_right_shift_impl() { |