| OLD | NEW |
| 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 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 58 return WebURL(toKURL(url)); | 58 return WebURL(toKURL(url)); |
| 59 } | 59 } |
| 60 | 60 |
| 61 class TestPrerendererClient : public WebPrerendererClient { | 61 class TestPrerendererClient : public WebPrerendererClient { |
| 62 public: | 62 public: |
| 63 TestPrerendererClient() { } | 63 TestPrerendererClient() { } |
| 64 virtual ~TestPrerendererClient() { } | 64 virtual ~TestPrerendererClient() { } |
| 65 | 65 |
| 66 void setExtraDataForNextPrerender(WebPrerender::ExtraData* extraData) | 66 void setExtraDataForNextPrerender(WebPrerender::ExtraData* extraData) |
| 67 { | 67 { |
| 68 ASSERT(!m_extraData); | 68 DCHECK(!m_extraData); |
| 69 m_extraData = adoptPtr(extraData); | 69 m_extraData = adoptPtr(extraData); |
| 70 } | 70 } |
| 71 | 71 |
| 72 WebPrerender releaseWebPrerender() | 72 WebPrerender releaseWebPrerender() |
| 73 { | 73 { |
| 74 ASSERT(!m_webPrerenders.empty()); | 74 DCHECK(!m_webPrerenders.empty()); |
| 75 WebPrerender retval(m_webPrerenders.front()); | 75 WebPrerender retval(m_webPrerenders.front()); |
| 76 m_webPrerenders.pop_front(); | 76 m_webPrerenders.pop_front(); |
| 77 return retval; | 77 return retval; |
| 78 } | 78 } |
| 79 | 79 |
| 80 bool empty() const | 80 bool empty() const |
| 81 { | 81 { |
| 82 return m_webPrerenders.empty(); | 82 return m_webPrerenders.empty(); |
| 83 } | 83 } |
| 84 | 84 |
| 85 void clear() | 85 void clear() |
| 86 { | 86 { |
| 87 m_webPrerenders.clear(); | 87 m_webPrerenders.clear(); |
| 88 } | 88 } |
| 89 | 89 |
| 90 private: | 90 private: |
| 91 // From WebPrerendererClient: | 91 // From WebPrerendererClient: |
| 92 void willAddPrerender(WebPrerender* prerender) override | 92 void willAddPrerender(WebPrerender* prerender) override |
| 93 { | 93 { |
| 94 prerender->setExtraData(m_extraData.leakPtr()); | 94 prerender->setExtraData(m_extraData.leakPtr()); |
| 95 | 95 |
| 96 ASSERT(!prerender->isNull()); | 96 DCHECK(!prerender->isNull()); |
| 97 m_webPrerenders.push_back(*prerender); | 97 m_webPrerenders.push_back(*prerender); |
| 98 } | 98 } |
| 99 | 99 |
| 100 OwnPtr<WebPrerender::ExtraData> m_extraData; | 100 OwnPtr<WebPrerender::ExtraData> m_extraData; |
| 101 std::list<WebPrerender> m_webPrerenders; | 101 std::list<WebPrerender> m_webPrerenders; |
| 102 }; | 102 }; |
| 103 | 103 |
| 104 class TestPrerenderingSupport : public WebPrerenderingSupport { | 104 class TestPrerenderingSupport : public WebPrerenderingSupport { |
| 105 public: | 105 public: |
| 106 TestPrerenderingSupport() | 106 TestPrerenderingSupport() |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 192 m_webViewHelper.webView()->mainFrame()->collectGarbage(); | 192 m_webViewHelper.webView()->mainFrame()->collectGarbage(); |
| 193 m_webViewHelper.reset(); | 193 m_webViewHelper.reset(); |
| 194 | 194 |
| 195 WebCache::clear(); | 195 WebCache::clear(); |
| 196 } | 196 } |
| 197 | 197 |
| 198 Element& console() | 198 Element& console() |
| 199 { | 199 { |
| 200 Document* document = m_webViewHelper.webViewImpl()->mainFrameImpl()->fra
me()->document(); | 200 Document* document = m_webViewHelper.webViewImpl()->mainFrameImpl()->fra
me()->document(); |
| 201 Element* console = document->getElementById("console"); | 201 Element* console = document->getElementById("console"); |
| 202 ASSERT(isHTMLUListElement(console)); | 202 DCHECK(isHTMLUListElement(console)); |
| 203 return *console; | 203 return *console; |
| 204 } | 204 } |
| 205 | 205 |
| 206 unsigned consoleLength() | 206 unsigned consoleLength() |
| 207 { | 207 { |
| 208 return console().countChildren() - 1; | 208 return console().countChildren() - 1; |
| 209 } | 209 } |
| 210 | 210 |
| 211 WebString consoleAt(unsigned i) | 211 WebString consoleAt(unsigned i) |
| 212 { | 212 { |
| 213 ASSERT(consoleLength() > i); | 213 DCHECK_GT(consoleLength(), i); |
| 214 | 214 |
| 215 Node* item = NodeTraversal::childAt(console(), 1 + i); | 215 Node* item = NodeTraversal::childAt(console(), 1 + i); |
| 216 | 216 |
| 217 ASSERT(item); | 217 DCHECK(item); |
| 218 ASSERT(isHTMLLIElement(item)); | 218 DCHECK(isHTMLLIElement(item)); |
| 219 ASSERT(item->hasChildren()); | 219 DCHECK(item->hasChildren()); |
| 220 | 220 |
| 221 return item->textContent(); | 221 return item->textContent(); |
| 222 } | 222 } |
| 223 | 223 |
| 224 void executeScript(const char* code) | 224 void executeScript(const char* code) |
| 225 { | 225 { |
| 226 m_webViewHelper.webView()->mainFrame()->executeScript(WebScriptSource(We
bString::fromUTF8(code))); | 226 m_webViewHelper.webView()->mainFrame()->executeScript(WebScriptSource(We
bString::fromUTF8(code))); |
| 227 } | 227 } |
| 228 | 228 |
| 229 TestPrerenderingSupport* prerenderingSupport() | 229 TestPrerenderingSupport* prerenderingSupport() |
| (...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 488 WebPrerender relNextOnly = prerendererClient()->releaseWebPrerender(); | 488 WebPrerender relNextOnly = prerendererClient()->releaseWebPrerender(); |
| 489 EXPECT_EQ(toWebURL("http://rel-next-only.com/"), relNextOnly.url()); | 489 EXPECT_EQ(toWebURL("http://rel-next-only.com/"), relNextOnly.url()); |
| 490 EXPECT_EQ(PrerenderRelTypeNext, relNextOnly.relTypes()); | 490 EXPECT_EQ(PrerenderRelTypeNext, relNextOnly.relTypes()); |
| 491 | 491 |
| 492 WebPrerender relNextAndPrerender = prerendererClient()->releaseWebPrerender(
); | 492 WebPrerender relNextAndPrerender = prerendererClient()->releaseWebPrerender(
); |
| 493 EXPECT_EQ(toWebURL("http://rel-next-and-prerender.com/"), relNextAndPrerende
r.url()); | 493 EXPECT_EQ(toWebURL("http://rel-next-and-prerender.com/"), relNextAndPrerende
r.url()); |
| 494 EXPECT_EQ(static_cast<unsigned>(PrerenderRelTypeNext | PrerenderRelTypePrere
nder), relNextAndPrerender.relTypes()); | 494 EXPECT_EQ(static_cast<unsigned>(PrerenderRelTypeNext | PrerenderRelTypePrere
nder), relNextAndPrerender.relTypes()); |
| 495 } | 495 } |
| 496 | 496 |
| 497 } // namespace | 497 } // namespace |
| OLD | NEW |