diff options
author | akalin@chromium.org <akalin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-25 22:19:04 +0000 |
---|---|---|
committer | akalin@chromium.org <akalin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-25 22:19:04 +0000 |
commit | 26931bcf7aae254adf95cd5e8a104127a1cf7af8 (patch) | |
tree | 61287245d95f5889c54a304b5822b6c5d977c2c7 /base/version_unittest.cc | |
parent | ceb47118d6c222d6b90f52dcbf9a77d38faf65eb (diff) | |
download | chromium_src-26931bcf7aae254adf95cd5e8a104127a1cf7af8.zip chromium_src-26931bcf7aae254adf95cd5e8a104127a1cf7af8.tar.gz chromium_src-26931bcf7aae254adf95cd5e8a104127a1cf7af8.tar.bz2 |
Fixed bug where an empty version string is considered valid.
Made default constructor public, but DCHECK() on any use of a
default-constructed object.
BUG=none
TEST=unittests
Review URL: http://codereview.chromium.org/1364002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42681 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/version_unittest.cc')
-rw-r--r-- | base/version_unittest.cc | 25 |
1 files changed, 19 insertions, 6 deletions
diff --git a/base/version_unittest.cc b/base/version_unittest.cc index d2cf98b..2e3c2ca 100644 --- a/base/version_unittest.cc +++ b/base/version_unittest.cc @@ -6,14 +6,27 @@ #include "base/version.h" #include "testing/gtest/include/gtest/gtest.h" -namespace { +class VersionTest : public testing::Test { +}; -TEST(Version, GetVersionFromString) { +TEST_F(VersionTest, DefaultConstructor) { + Version v; + EXPECT_FALSE(v.is_valid_); +} + +TEST_F(VersionTest, GetVersionFromString) { static const struct version_string { const char* input; size_t parts; bool success; } cases[] = { + {"", 0, false}, + {" ", 0, false}, + {"\t", 0, false}, + {"\n", 0, false}, + {" ", 0, false}, + {".", 0, false}, + {" . ", 0, false}, {"0", 1, true}, {"0.0", 2, true}, {"65537.0", 0, false}, @@ -29,12 +42,14 @@ TEST(Version, GetVersionFromString) { for (size_t i = 0; i < ARRAYSIZE_UNSAFE(cases); ++i) { scoped_ptr<Version> vers(Version::GetVersionFromString(cases[i].input)); EXPECT_EQ(cases[i].success, vers.get() != NULL); - if (cases[i].success) + if (cases[i].success) { + EXPECT_TRUE(vers->is_valid_); EXPECT_EQ(cases[i].parts, vers->components().size()); + } } } -TEST(Version, Compare) { +TEST_F(VersionTest, Compare) { static const struct version_compare { const char* lhs; const char* rhs; @@ -58,5 +73,3 @@ TEST(Version, Compare) { cases[i].lhs << " ? " << cases[i].rhs; } } - -} |