diff options
author | eroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-09-10 19:47:36 +0000 |
---|---|---|
committer | eroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-09-10 19:47:36 +0000 |
commit | eaad22ec3fe7438aeb921b316aae094253b5a764 (patch) | |
tree | c77ff52115c11e7595c31b9224af9981bd17cde6 /net/url_request/url_request_unittest.cc | |
parent | 9429b07d66885a0780fa4d3d62507af4cc5b13e2 (diff) | |
download | chromium_src-eaad22ec3fe7438aeb921b316aae094253b5a764.zip chromium_src-eaad22ec3fe7438aeb921b316aae094253b5a764.tar.gz chromium_src-eaad22ec3fe7438aeb921b316aae094253b5a764.tar.bz2 |
Use "GURL::possibly_invalid_spec()" rather than "GURL::spec()", in case the GURL that was passed to URLRequest(const GURL&) is invalid.
BUG=http://crbug.com/21423
Review URL: http://codereview.chromium.org/192057
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25903 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/url_request/url_request_unittest.cc')
-rw-r--r-- | net/url_request/url_request_unittest.cc | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/net/url_request/url_request_unittest.cc b/net/url_request/url_request_unittest.cc index d18ffeb..2f2f2e1 100644 --- a/net/url_request/url_request_unittest.cc +++ b/net/url_request/url_request_unittest.cc @@ -269,7 +269,8 @@ TEST_F(URLRequestTest, Tracking) { TEST_F(URLRequestTest, TrackingGraveyardBounded) { URLRequest::InstanceTracker::Get()->ClearRecentlyDeceased(); EXPECT_EQ(0u, URLRequest::InstanceTracker::Get()->GetLiveRequests().size()); - EXPECT_EQ(0u, URLRequest::InstanceTracker::Get()->GetLiveRequests().size()); + EXPECT_EQ(0u, + URLRequest::InstanceTracker::Get()->GetRecentlyDeceased().size()); const size_t kMaxGraveyardSize = URLRequest::InstanceTracker::kMaxGraveyardSize; @@ -312,6 +313,28 @@ TEST_F(URLRequestTest, TrackingGraveyardBounded) { .original_url.spec().size()); } +// Test the instance tracking functionality of URLRequest does not +// fail if the URL was invalid. http://crbug.com/21423. +TEST_F(URLRequestTest, TrackingInvalidURL) { + URLRequest::InstanceTracker::Get()->ClearRecentlyDeceased(); + EXPECT_EQ(0u, URLRequest::InstanceTracker::Get()->GetLiveRequests().size()); + EXPECT_EQ(0u, + URLRequest::InstanceTracker::Get()->GetRecentlyDeceased().size()); + + { + GURL invalid_url("xabc"); + EXPECT_FALSE(invalid_url.is_valid()); + URLRequest req(invalid_url, NULL); + } + + // Check that the invalid URL made it into graveyard. + URLRequest::InstanceTracker::RecentRequestInfoList recent_reqs = + URLRequest::InstanceTracker::Get()->GetRecentlyDeceased(); + + ASSERT_EQ(1u, recent_reqs.size()); + EXPECT_FALSE(recent_reqs[0].original_url.is_valid()); +} + TEST_F(URLRequestTest, QuitTest) { // Don't use shared server here because we order it to quit. // It would impact other tests. |