This source file includes following definitions.
- ExpectNoParse
- ExpectParse
- TEST
#include "chrome/common/pref_names_util.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace {
void ExpectNoParse(const std::string& path) {
EXPECT_FALSE(pref_names_util::ParseFontNamePrefPath(path, NULL, NULL));
}
void ExpectParse(const std::string& path,
const std::string& expected_generic_family,
const std::string& expected_script)
{
std::string generic_family;
std::string script;
ASSERT_TRUE(pref_names_util::ParseFontNamePrefPath(path, &generic_family,
&script));
EXPECT_EQ(expected_generic_family, generic_family);
EXPECT_EQ(expected_script, script);
}
}
TEST(PrefNamesUtilTest, Basic) {
ExpectNoParse(std::string());
ExpectNoParse(".");
ExpectNoParse(".....");
ExpectNoParse("webkit.webprefs.fonts.");
ExpectNoParse("webkit.webprefs.fonts..");
ExpectNoParse("webkit.webprefs.fontsfoobar.standard.Hrkt");
ExpectNoParse("foobar.webprefs.fonts.standard.Hrkt");
ExpectParse("webkit.webprefs.fonts.standard.Hrkt", "standard", "Hrkt");
ExpectParse("webkit.webprefs.fonts.standard.Hrkt.", "standard", "Hrkt.");
ExpectParse("webkit.webprefs.fonts.standard.Hrkt.Foobar", "standard",
"Hrkt.Foobar");
ExpectParse("webkit.webprefs.fonts...", std::string(), ".");
ExpectParse("webkit.webprefs.fonts....", std::string(), "..");
EXPECT_TRUE(pref_names_util::ParseFontNamePrefPath(
"webkit.webprefs.fonts.standard.Hrkt", NULL, NULL));
}