Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(25)

Unified Diff: chrome/browser/net/prerender_interceptor_unittest.cc

Issue 5109012: Fix PrerenderInterceptor leaks. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 10 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/net/prerender_interceptor_unittest.cc
diff --git a/chrome/browser/net/prerender_interceptor_unittest.cc b/chrome/browser/net/prerender_interceptor_unittest.cc
index 9c2200b7f21a80b82c0ad96ca6e53883093f8df8..bc739b811fbc48a4f488043a2b851b200224a800 100644
--- a/chrome/browser/net/prerender_interceptor_unittest.cc
+++ b/chrome/browser/net/prerender_interceptor_unittest.cc
@@ -7,6 +7,7 @@
#include <string>
#include "base/callback.h"
+#include "base/compiler_specific.h"
#include "base/file_path.h"
#include "base/message_loop_proxy.h"
#include "base/scoped_ptr.h"
@@ -15,11 +16,12 @@
#include "net/base/load_flags.h"
#include "net/test/test_server.h"
#include "net/url_request/url_request_unittest.h"
+#include "testing/gtest/include/gtest/gtest.h"
namespace chrome_browser_net {
class PrerenderInterceptorTest : public testing::Test {
- public:
+ protected:
PrerenderInterceptorTest();
void MakeTestUrl(const std::string& base);
@@ -29,13 +31,18 @@ class PrerenderInterceptorTest : public testing::Test {
GURL gurl_;
GURL last_intercepted_gurl_;
scoped_ptr<URLRequest> req_;
+
private:
void SetLastInterceptedGurl(const GURL& url);
+ CallbackImpl<PrerenderInterceptorTest,
+ void (PrerenderInterceptorTest::*)(const GURL&),
+ Tuple1<const GURL&> > callback_;
PrerenderInterceptor prerender_interceptor_;
MessageLoopForIO io_loop_;
scoped_refptr<base::MessageLoopProxy> io_message_loop_proxy_;
BrowserThread ui_thread_;
+ TestDelegate delegate_;
};
PrerenderInterceptorTest::PrerenderInterceptorTest()
@@ -43,9 +50,8 @@ PrerenderInterceptorTest::PrerenderInterceptorTest()
FilePath(FILE_PATH_LITERAL("chrome/test/data"))),
last_intercepted_gurl_("http://not.initialized/"),
ALLOW_THIS_IN_INITIALIZER_LIST(
- prerender_interceptor_(
- NewCallback(this,
- &PrerenderInterceptorTest::SetLastInterceptedGurl))),
+ callback_(this, &PrerenderInterceptorTest::SetLastInterceptedGurl)),
+ prerender_interceptor_(&callback_),
ui_thread_(BrowserThread::UI, &io_loop_) {
}
@@ -59,13 +65,15 @@ void PrerenderInterceptorTest::SetUp() {
void PrerenderInterceptorTest::MakeTestUrl(const std::string& base) {
gurl_ = test_server_.GetURL(base);
- req_.reset(new TestURLRequest(gurl_, new TestDelegate()));
+ req_.reset(new TestURLRequest(gurl_, &delegate_));
gavinp 2010/11/22 03:04:18 Thanks. I clearly didn't think that code through.
}
void PrerenderInterceptorTest::SetLastInterceptedGurl(const GURL& url) {
last_intercepted_gurl_ = url;
}
+namespace {
+
TEST_F(PrerenderInterceptorTest, Interception) {
MakeTestUrl("files/prerender/doc1.html");
req_->set_load_flags(req_->load_flags() | net::LOAD_PREFETCH);
@@ -96,5 +104,6 @@ TEST_F(PrerenderInterceptorTest, WrongMimeType) {
EXPECT_NE(gurl_, last_intercepted_gurl_);
}
-} // namespace chrome_browser_net
+} // namespace
+} // namespace chrome_browser_net
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698