| 123456789101112131415161718192021222324252627282930313233343536 |
- //
- // dyn_limit_test.cxx
- // limit-test
- //
- // Created by Sam Jaffe on 12/9/23.
- //
- #include "math/dyn_limit.h"
- #include "xcode_gtest_helper.h"
- TEST(DynBoundNumber, ConstructsInbounds) {
- EXPECT_EQ(math::DynBound<int>(0, -5, +7), 0);
- }
- TEST(DynBoundNumber, ClampsOOBLow) {
- EXPECT_EQ(math::DynBound<int>(-6, -5, +7), -5);
- }
- TEST(DynBoundNumber, ClampsOOBHigh) {
- EXPECT_EQ(math::DynBound<int>(+8, -5, +7), +7);
- }
- TEST(DynBoundNumber, IncrementIsLimitSafe) {
- math::DynBound<int> value(+7, -5, +7);
- EXPECT_EQ(value, +7);
- EXPECT_EQ(value++, +7);
- EXPECT_EQ(value, +7);
- }
- TEST(DynBoundNumber, DecrementIsLimitSafe) {
- math::DynBound<int> value(-5, -5, +7);
- EXPECT_EQ(value, -5);
- EXPECT_EQ(value--, -5);
- EXPECT_EQ(value, -5);
- }
|