|
|
@@ -19,6 +19,18 @@ TEST(CastIntegerTest, CastsWithBase10) {
|
|
|
EXPECT_THAT(value, 10);
|
|
|
}
|
|
|
|
|
|
+TEST(CastIntegerTest, DoesNotCastBase8) {
|
|
|
+ auto [value, success] = cast<int>("010");
|
|
|
+ EXPECT_TRUE(success);
|
|
|
+ EXPECT_THAT(value, 10);
|
|
|
+}
|
|
|
+
|
|
|
+TEST(CastIntegerTest, DoesNotCastHex) {
|
|
|
+ auto [value, success] = cast<int>("0x10");
|
|
|
+ EXPECT_FALSE(success);
|
|
|
+ EXPECT_THAT(value, 0);
|
|
|
+}
|
|
|
+
|
|
|
TEST(CastIntegerTest, FailsOnBadData) {
|
|
|
auto [value, success] = cast<int>("x");
|
|
|
EXPECT_FALSE(success);
|