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

Side by Side Diff: third_party/WebKit/Source/web/tests/PrerenderingTest.cpp

Issue 2050123002: Remove OwnPtr from Blink. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: First attempt to land. Created 4 years, 6 months 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2012 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 26 matching lines...) Expand all
37 #include "public/platform/WebURLLoaderMockFactory.h" 37 #include "public/platform/WebURLLoaderMockFactory.h"
38 #include "public/web/WebCache.h" 38 #include "public/web/WebCache.h"
39 #include "public/web/WebFrame.h" 39 #include "public/web/WebFrame.h"
40 #include "public/web/WebPrerendererClient.h" 40 #include "public/web/WebPrerendererClient.h"
41 #include "public/web/WebScriptSource.h" 41 #include "public/web/WebScriptSource.h"
42 #include "public/web/WebView.h" 42 #include "public/web/WebView.h"
43 #include "public/web/WebViewClient.h" 43 #include "public/web/WebViewClient.h"
44 #include "testing/gtest/include/gtest/gtest.h" 44 #include "testing/gtest/include/gtest/gtest.h"
45 #include "web/WebLocalFrameImpl.h" 45 #include "web/WebLocalFrameImpl.h"
46 #include "web/tests/FrameTestHelpers.h" 46 #include "web/tests/FrameTestHelpers.h"
47 #include "wtf/OwnPtr.h" 47 #include "wtf/PtrUtil.h"
48 #include <functional> 48 #include <functional>
49 #include <list> 49 #include <list>
50 #include <memory>
50 51
51 using namespace blink; 52 using namespace blink;
52 using blink::URLTestHelpers::toKURL; 53 using blink::URLTestHelpers::toKURL;
53 54
54 namespace { 55 namespace {
55 56
56 WebURL toWebURL(const char* url) 57 WebURL toWebURL(const char* url)
57 { 58 {
58 return WebURL(toKURL(url)); 59 return WebURL(toKURL(url));
59 } 60 }
60 61
61 class TestPrerendererClient : public WebPrerendererClient { 62 class TestPrerendererClient : public WebPrerendererClient {
62 public: 63 public:
63 TestPrerendererClient() { } 64 TestPrerendererClient() { }
64 virtual ~TestPrerendererClient() { } 65 virtual ~TestPrerendererClient() { }
65 66
66 void setExtraDataForNextPrerender(WebPrerender::ExtraData* extraData) 67 void setExtraDataForNextPrerender(WebPrerender::ExtraData* extraData)
67 { 68 {
68 DCHECK(!m_extraData); 69 DCHECK(!m_extraData);
69 m_extraData = adoptPtr(extraData); 70 m_extraData = wrapUnique(extraData);
70 } 71 }
71 72
72 WebPrerender releaseWebPrerender() 73 WebPrerender releaseWebPrerender()
73 { 74 {
74 DCHECK(!m_webPrerenders.empty()); 75 DCHECK(!m_webPrerenders.empty());
75 WebPrerender retval(m_webPrerenders.front()); 76 WebPrerender retval(m_webPrerenders.front());
76 m_webPrerenders.pop_front(); 77 m_webPrerenders.pop_front();
77 return retval; 78 return retval;
78 } 79 }
79 80
80 bool empty() const 81 bool empty() const
81 { 82 {
82 return m_webPrerenders.empty(); 83 return m_webPrerenders.empty();
83 } 84 }
84 85
85 void clear() 86 void clear()
86 { 87 {
87 m_webPrerenders.clear(); 88 m_webPrerenders.clear();
88 } 89 }
89 90
90 private: 91 private:
91 // From WebPrerendererClient: 92 // From WebPrerendererClient:
92 void willAddPrerender(WebPrerender* prerender) override 93 void willAddPrerender(WebPrerender* prerender) override
93 { 94 {
94 prerender->setExtraData(m_extraData.leakPtr()); 95 prerender->setExtraData(m_extraData.release());
95 96
96 DCHECK(!prerender->isNull()); 97 DCHECK(!prerender->isNull());
97 m_webPrerenders.push_back(*prerender); 98 m_webPrerenders.push_back(*prerender);
98 } 99 }
99 100
100 OwnPtr<WebPrerender::ExtraData> m_extraData; 101 std::unique_ptr<WebPrerender::ExtraData> m_extraData;
101 std::list<WebPrerender> m_webPrerenders; 102 std::list<WebPrerender> m_webPrerenders;
102 }; 103 };
103 104
104 class TestPrerenderingSupport : public WebPrerenderingSupport { 105 class TestPrerenderingSupport : public WebPrerenderingSupport {
105 public: 106 public:
106 TestPrerenderingSupport() 107 TestPrerenderingSupport()
107 { 108 {
108 initialize(this); 109 initialize(this);
109 } 110 }
110 111
(...skipping 378 matching lines...) Expand 10 before | Expand all | Expand 10 after
489 WebPrerender relNextOnly = prerendererClient()->releaseWebPrerender(); 490 WebPrerender relNextOnly = prerendererClient()->releaseWebPrerender();
490 EXPECT_EQ(toWebURL("http://rel-next-only.com/"), relNextOnly.url()); 491 EXPECT_EQ(toWebURL("http://rel-next-only.com/"), relNextOnly.url());
491 EXPECT_EQ(PrerenderRelTypeNext, relNextOnly.relTypes()); 492 EXPECT_EQ(PrerenderRelTypeNext, relNextOnly.relTypes());
492 493
493 WebPrerender relNextAndPrerender = prerendererClient()->releaseWebPrerender( ); 494 WebPrerender relNextAndPrerender = prerendererClient()->releaseWebPrerender( );
494 EXPECT_EQ(toWebURL("http://rel-next-and-prerender.com/"), relNextAndPrerende r.url()); 495 EXPECT_EQ(toWebURL("http://rel-next-and-prerender.com/"), relNextAndPrerende r.url());
495 EXPECT_EQ(static_cast<unsigned>(PrerenderRelTypeNext | PrerenderRelTypePrere nder), relNextAndPrerender.relTypes()); 496 EXPECT_EQ(static_cast<unsigned>(PrerenderRelTypeNext | PrerenderRelTypePrere nder), relNextAndPrerender.relTypes());
496 } 497 }
497 498
498 } // namespace 499 } // namespace
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/web/tests/KeyboardTest.cpp ('k') | third_party/WebKit/Source/web/tests/SpinLockTest.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698