| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- //
- // biginteger_test.cpp
- // bigdecimal
- //
- // Created by Sam Jaffe on 5/18/18.
- //
- #include <gmock/gmock.h>
- #include "biginteger.h"
- TEST(BigIntegerTest, ModuloZeroThrows) {
- math::biginteger bi{1000};
- EXPECT_THROW(bi%0, std::domain_error);
- }
- TEST(BigIntegerTest, ModuloBiggerIsSameValue) {
- math::biginteger bi{1000};
- EXPECT_THAT(bi%2000, bi);
- }
- TEST(BigIntegerTest, ModuloSameNumberIsZero) {
- math::biginteger bi{1000};
- EXPECT_THAT(bi%1000, 0);
- }
- TEST(BigIntegerTest, ModuloDivisorIsZero) {
- math::biginteger bi{1000};
- EXPECT_THAT(bi%100, 0);
- }
- TEST(BigIntegerTest, ModuloDiffSignIsInverseElement) {
- math::biginteger bi{1000};
- math::biginteger mod{13};
- EXPECT_THAT((bi%mod)+((-bi)%mod), mod);
- }
- TEST(BigIntegerTest, ModuloNegativesIsNegative) {
- math::biginteger bi{1000};
- math::biginteger mod{13};
- EXPECT_THAT((bi%mod), -((-bi)%(-mod)));
- }
|