diff options
author | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-06 07:47:12 +0000 |
---|---|---|
committer | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-06 07:47:12 +0000 |
commit | 2102dfca368947f67ca224accc9868447b3da2a0 (patch) | |
tree | c54964bade604a16de9c5660bfcf41daf97384a7 /chrome/common/extensions/extension_unittest.cc | |
parent | 34acadd501bf6f49b961aa4d369ae863171e71f5 (diff) | |
download | chromium_src-2102dfca368947f67ca224accc9868447b3da2a0.zip chromium_src-2102dfca368947f67ca224accc9868447b3da2a0.tar.gz chromium_src-2102dfca368947f67ca224accc9868447b3da2a0.tar.bz2 |
Reland: Add a minimum_chrome_version key to the manifest.
BUG=24737
TBR=mpcomplete@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35618 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/extensions/extension_unittest.cc')
-rw-r--r-- | chrome/common/extensions/extension_unittest.cc | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/chrome/common/extensions/extension_unittest.cc b/chrome/common/extensions/extension_unittest.cc index db992eb..29485de 100644 --- a/chrome/common/extensions/extension_unittest.cc +++ b/chrome/common/extensions/extension_unittest.cc @@ -23,8 +23,7 @@ namespace errors = extension_manifest_errors; class ExtensionTest : public testing::Test { }; -// TODO(mad): http://crbug.com/26214 -TEST(ExtensionTest, DISABLED_InitFromValueInvalid) { +TEST(ExtensionTest, InitFromValueInvalid) { #if defined(OS_WIN) FilePath path(FILE_PATH_LITERAL("c:\\foo")); #elif defined(OS_POSIX) @@ -251,6 +250,20 @@ TEST(ExtensionTest, DISABLED_InitFromValueInvalid) { input_value->Set(keys::kDefaultLocale, Value::CreateStringValue("")); EXPECT_FALSE(extension.InitFromValue(*input_value, true, &error)); EXPECT_TRUE(MatchPatternASCII(error, errors::kInvalidDefaultLocale)); + + // Test invalid minimum_chrome_version. + input_value.reset(static_cast<DictionaryValue*>(valid_value->DeepCopy())); + input_value->Set(keys::kMinimumChromeVersion, Value::CreateIntegerValue(42)); + EXPECT_FALSE(extension.InitFromValue(*input_value, true, &error)); + EXPECT_TRUE(MatchPatternASCII(error, errors::kInvalidMinimumChromeVersion)); + +#if !defined(OS_MACOSX) + // TODO(aa): The version isn't stamped into the unit test binary on mac. + input_value->Set(keys::kMinimumChromeVersion, + Value::CreateStringValue("88.8")); + EXPECT_FALSE(extension.InitFromValue(*input_value, true, &error)); + EXPECT_TRUE(MatchPatternASCII(error, errors::kChromeVersionTooLow)); +#endif } TEST(ExtensionTest, InitFromValueValid) { @@ -281,6 +294,15 @@ TEST(ExtensionTest, InitFromValueValid) { EXPECT_EQ("", error); EXPECT_EQ("chrome-extension", extension.options_url().scheme()); EXPECT_EQ("/options.html", extension.options_url().path()); + +#if !defined(OS_MACOSX) + // TODO(aa): The version isn't stamped into the unit test binary on mac. + // Test with a minimum_chrome_version. + input_value.SetString(keys::kMinimumChromeVersion, "1.0"); + EXPECT_TRUE(extension.InitFromValue(input_value, false, &error)); + EXPECT_EQ("", error); + // The minimum chrome version is not stored in the Extension object. +#endif } TEST(ExtensionTest, GetResourceURLAndPath) { |