1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 15:48:12 +00:00

AK: Add convert_to_uint_from_octal

This commit is contained in:
Xavier Defrang 2021-12-20 21:06:54 +01:00 committed by Brian Gianforcaro
parent 6ca34f5647
commit 9e97823ff8
3 changed files with 91 additions and 0 deletions

View file

@ -226,6 +226,60 @@ TEST_CASE(convert_to_uint)
EXPECT(!actual_u64.has_value());
}
TEST_CASE(convert_to_uint_from_octal)
{
auto value = AK::StringUtils::convert_to_uint_from_octal<u16>(StringView());
EXPECT(!value.has_value());
value = AK::StringUtils::convert_to_uint_from_octal<u16>("");
EXPECT(!value.has_value());
value = AK::StringUtils::convert_to_uint_from_octal<u16>("a");
EXPECT(!value.has_value());
value = AK::StringUtils::convert_to_uint_from_octal<u16>("+");
EXPECT(!value.has_value());
value = AK::StringUtils::convert_to_uint_from_octal<u16>("-");
EXPECT(!value.has_value());
value = AK::StringUtils::convert_to_uint_from_octal<u16>("+1");
EXPECT(!value.has_value());
value = AK::StringUtils::convert_to_uint_from_octal<u16>("-1");
EXPECT(!value.has_value());
value = AK::StringUtils::convert_to_uint_from_octal<u16>("8");
EXPECT(!value.has_value());
auto actual = AK::StringUtils::convert_to_uint_from_octal<u16>("77777777");
EXPECT(!actual.has_value());
actual = AK::StringUtils::convert_to_uint_from_octal<u16>("0");
EXPECT_EQ(actual.has_value(), true);
EXPECT_EQ(actual.value(), 0u);
actual = AK::StringUtils::convert_to_uint_from_octal<u16>("1");
EXPECT_EQ(actual.has_value(), true);
EXPECT_EQ(actual.value(), 1u);
actual = AK::StringUtils::convert_to_uint_from_octal<u16>("0755");
EXPECT_EQ(actual.has_value(), true);
EXPECT_EQ(actual.value(), 0755u);
actual = AK::StringUtils::convert_to_uint_from_octal<u16>("755");
EXPECT_EQ(actual.has_value(), true);
EXPECT_EQ(actual.value(), 0755u);
actual = AK::StringUtils::convert_to_uint_from_octal<u16>(" \t644 \n\n");
EXPECT_EQ(actual.has_value(), true);
EXPECT_EQ(actual.value(), 0644u);
actual = AK::StringUtils::convert_to_uint_from_octal<u16>("177777");
EXPECT_EQ(actual.has_value(), true);
EXPECT_EQ(actual.value(), 0177777u);
}
TEST_CASE(ends_with)
{
String test_string = "ABCDEF";