Loading tools/aapt2/ResourceUtils.cpp +9 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ #include "ResourceUtils.h" #include <algorithm> #include <sstream> #include "android-base/stringprintf.h" Loading Loading @@ -503,6 +504,14 @@ Maybe<int> ParseSdkVersion(const StringPiece& str) { if (entry.first == trimmed_str) { return entry.second; } // Try parsing codename from "[codename].[preview_sdk_fingerprint]" value. const StringPiece::const_iterator begin = std::begin(trimmed_str); const StringPiece::const_iterator end = std::end(trimmed_str); const StringPiece::const_iterator codename_end = std::find(begin, end, '.'); if (codename_end != end && entry.first == trimmed_str.substr(begin, codename_end)) { return entry.second; } return {}; } Loading tools/aapt2/ResourceUtils_test.cpp +12 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ #include "ResourceUtils.h" #include "SdkConstants.h" #include "Resource.h" #include "test/Test.h" Loading Loading @@ -212,6 +213,17 @@ TEST(ResourceUtilsTest, ItemsWithWhitespaceAreParsedCorrectly) { Pointee(ValueEq(BinaryPrimitive(Res_value::TYPE_FLOAT, expected_float_flattened)))); } TEST(ResourceUtilsTest, ParseSdkVersionWithCodename) { const android::StringPiece codename = GetDevelopmentSdkCodeNameAndVersion().first; const int version = GetDevelopmentSdkCodeNameAndVersion().second; EXPECT_THAT(ResourceUtils::ParseSdkVersion(codename), Eq(Maybe<int>(version))); EXPECT_THAT( ResourceUtils::ParseSdkVersion(codename.to_string() + ".fingerprint"), Eq(Maybe<int>(version))); } TEST(ResourceUtilsTest, StringBuilderWhitespaceRemoval) { EXPECT_THAT(ResourceUtils::StringBuilder() .AppendText(" hey guys ") Loading Loading
tools/aapt2/ResourceUtils.cpp +9 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ #include "ResourceUtils.h" #include <algorithm> #include <sstream> #include "android-base/stringprintf.h" Loading Loading @@ -503,6 +504,14 @@ Maybe<int> ParseSdkVersion(const StringPiece& str) { if (entry.first == trimmed_str) { return entry.second; } // Try parsing codename from "[codename].[preview_sdk_fingerprint]" value. const StringPiece::const_iterator begin = std::begin(trimmed_str); const StringPiece::const_iterator end = std::end(trimmed_str); const StringPiece::const_iterator codename_end = std::find(begin, end, '.'); if (codename_end != end && entry.first == trimmed_str.substr(begin, codename_end)) { return entry.second; } return {}; } Loading
tools/aapt2/ResourceUtils_test.cpp +12 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ #include "ResourceUtils.h" #include "SdkConstants.h" #include "Resource.h" #include "test/Test.h" Loading Loading @@ -212,6 +213,17 @@ TEST(ResourceUtilsTest, ItemsWithWhitespaceAreParsedCorrectly) { Pointee(ValueEq(BinaryPrimitive(Res_value::TYPE_FLOAT, expected_float_flattened)))); } TEST(ResourceUtilsTest, ParseSdkVersionWithCodename) { const android::StringPiece codename = GetDevelopmentSdkCodeNameAndVersion().first; const int version = GetDevelopmentSdkCodeNameAndVersion().second; EXPECT_THAT(ResourceUtils::ParseSdkVersion(codename), Eq(Maybe<int>(version))); EXPECT_THAT( ResourceUtils::ParseSdkVersion(codename.to_string() + ".fingerprint"), Eq(Maybe<int>(version))); } TEST(ResourceUtilsTest, StringBuilderWhitespaceRemoval) { EXPECT_THAT(ResourceUtils::StringBuilder() .AppendText(" hey guys ") Loading