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

Unified Diff: Source/modules/cachestorage/CacheTest.cpp

Issue 1320563003: Oilpan: avoid using WeakPtr<> for heap residing objects. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: revert unrelated unit test addition Created 5 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: Source/modules/cachestorage/CacheTest.cpp
diff --git a/Source/modules/cachestorage/CacheTest.cpp b/Source/modules/cachestorage/CacheTest.cpp
index 48011811d557eafebd9d3a61cad7e53bf1853ca5..df3e74c1f6f5882802e25540d97407abfa55bfe4 100644
--- a/Source/modules/cachestorage/CacheTest.cpp
+++ b/Source/modules/cachestorage/CacheTest.cpp
@@ -33,13 +33,12 @@ namespace {
const char kNotImplementedString[] = "NotSupportedError: Method is not implemented.";
-class ScopedFetcherForTests final : public GlobalFetch::ScopedFetcher {
+class ScopedFetcherForTests final : public NoBaseWillBeGarbageCollectedFinalized<ScopedFetcherForTests>, public GlobalFetch::ScopedFetcher {
+ WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(ScopedFetcherForTests);
public:
- ScopedFetcherForTests()
- : m_fetchCount(0)
- , m_expectedUrl(nullptr)
- , m_weakFactory(this)
+ static PassOwnPtrWillBeRawPtr<ScopedFetcherForTests> create()
{
+ return adoptPtrWillBeNoop(new ScopedFetcherForTests);
}
ScriptPromise fetch(ScriptState* scriptState, const RequestInfo& requestInfo, const Dictionary&, ExceptionState&) override
@@ -63,9 +62,13 @@ public:
return ScriptPromise::reject(scriptState, V8ThrowException::createTypeError(scriptState->isolate(), "Unexpected call to fetch, no response available."));
}
- WeakPtr<GlobalFetch::ScopedFetcher> weakPtr()
+ WeakPtrWillBeRawPtr<GlobalFetch::ScopedFetcher> weakPtr()
{
+#if ENABLE(OILPAN)
+ return this;
+#else
return m_weakFactory.createWeakPtr();
+#endif
}
// This does not take ownership of its parameter. The provided sample object is used to check the parameter when called.
@@ -74,12 +77,29 @@ public:
int fetchCount() const { return m_fetchCount; }
+ DEFINE_INLINE_TRACE()
+ {
+ visitor->trace(m_response);
+ GlobalFetch::ScopedFetcher::trace(visitor);
+ }
+
private:
+ ScopedFetcherForTests()
+ : m_fetchCount(0)
+ , m_expectedUrl(nullptr)
+#if !ENABLE(OILPAN)
+ , m_weakFactory(this)
+#endif
+ {
+ }
+
int m_fetchCount;
const String* m_expectedUrl;
- Persistent<Response> m_response;
+ PersistentWillBeMember<Response> m_response;
+#if !ENABLE(OILPAN)
WeakPtrFactory<GlobalFetch::ScopedFetcher> m_weakFactory;
+#endif
};
// A test implementation of the WebServiceWorkerCache interface which returns a (provided) error for every operation, and optionally checks arguments
@@ -322,7 +342,7 @@ RequestInfo requestToRequestInfo(Request* value)
TEST_F(CacheStorageTest, Basics)
{
ScriptState::Scope scope(scriptState());
- OwnPtr<ScopedFetcherForTests> fetcher = adoptPtr(new ScopedFetcherForTests());
+ OwnPtrWillBeRawPtr<ScopedFetcherForTests> fetcher = ScopedFetcherForTests::create();
ErrorWebCacheForTests* testCache;
Cache* cache = createCache(fetcher.get(), testCache = new NotImplementedErrorCache());
ASSERT(cache);
@@ -348,7 +368,7 @@ TEST_F(CacheStorageTest, Basics)
TEST_F(CacheStorageTest, BasicArguments)
{
ScriptState::Scope scope(scriptState());
- OwnPtr<ScopedFetcherForTests> fetcher = adoptPtr(new ScopedFetcherForTests());
+ OwnPtrWillBeRawPtr<ScopedFetcherForTests> fetcher = ScopedFetcherForTests::create();
ErrorWebCacheForTests* testCache;
Cache* cache = createCache(fetcher.get(), testCache = new NotImplementedErrorCache());
ASSERT(cache);
@@ -404,7 +424,7 @@ TEST_F(CacheStorageTest, BasicArguments)
TEST_F(CacheStorageTest, BatchOperationArguments)
{
ScriptState::Scope scope(scriptState());
- OwnPtr<ScopedFetcherForTests> fetcher = adoptPtr(new ScopedFetcherForTests());
+ OwnPtrWillBeRawPtr<ScopedFetcherForTests> fetcher = ScopedFetcherForTests::create();
ErrorWebCacheForTests* testCache;
Cache* cache = createCache(fetcher.get(), testCache = new NotImplementedErrorCache());
ASSERT(cache);
@@ -484,7 +504,7 @@ private:
TEST_F(CacheStorageTest, MatchResponseTest)
{
ScriptState::Scope scope(scriptState());
- OwnPtr<ScopedFetcherForTests> fetcher = adoptPtr(new ScopedFetcherForTests());
+ OwnPtrWillBeRawPtr<ScopedFetcherForTests> fetcher = ScopedFetcherForTests::create();
const String requestUrl = "http://request.url/";
const String responseUrl = "http://match.response.test/";
@@ -520,7 +540,7 @@ private:
TEST_F(CacheStorageTest, KeysResponseTest)
{
ScriptState::Scope scope(scriptState());
- OwnPtr<ScopedFetcherForTests> fetcher = adoptPtr(new ScopedFetcherForTests());
+ OwnPtrWillBeRawPtr<ScopedFetcherForTests> fetcher = ScopedFetcherForTests::create();
const String url1 = "http://first.request/";
const String url2 = "http://second.request/";
@@ -571,7 +591,7 @@ private:
TEST_F(CacheStorageTest, MatchAllAndBatchResponseTest)
{
ScriptState::Scope scope(scriptState());
- OwnPtr<ScopedFetcherForTests> fetcher = adoptPtr(new ScopedFetcherForTests());
+ OwnPtrWillBeRawPtr<ScopedFetcherForTests> fetcher = ScopedFetcherForTests::create();
const String url1 = "http://first.response/";
const String url2 = "http://second.response/";
@@ -609,7 +629,7 @@ TEST_F(CacheStorageTest, MatchAllAndBatchResponseTest)
TEST_F(CacheStorageTest, Add)
{
ScriptState::Scope scope(scriptState());
- OwnPtr<ScopedFetcherForTests> fetcher = adoptPtr(new ScopedFetcherForTests());
+ OwnPtrWillBeRawPtr<ScopedFetcherForTests> fetcher = ScopedFetcherForTests::create();
const String url = "http://www.cacheadd.test/";
const KURL kurl(ParsedURLString, url);

Powered by Google App Engine
This is Rietveld 408576698