Index: third_party/WebKit/Source/modules/fetch/DataConsumerTeeTest.cpp |
diff --git a/third_party/WebKit/Source/modules/fetch/DataConsumerTeeTest.cpp b/third_party/WebKit/Source/modules/fetch/DataConsumerTeeTest.cpp |
index d46714312f38c3a3dee4c3d3b06898bc34b2b121..dfa3d1cba25c3e316fda3f7d8a84c74773944b05 100644 |
--- a/third_party/WebKit/Source/modules/fetch/DataConsumerTeeTest.cpp |
+++ b/third_party/WebKit/Source/modules/fetch/DataConsumerTeeTest.cpp |
@@ -15,7 +15,9 @@ |
#include "public/platform/WebTraceLocation.h" |
#include "testing/gtest/include/gtest/gtest.h" |
#include "wtf/PassRefPtr.h" |
+#include "wtf/PtrUtil.h" |
#include "wtf/RefPtr.h" |
+#include <memory> |
#include <string.h> |
#include <v8.h> |
@@ -53,10 +55,10 @@ String toString(const Vector<char>& v) |
template<typename Handle> |
class TeeCreationThread { |
public: |
- void run(PassOwnPtr<Handle> src, OwnPtr<Handle>* dest1, OwnPtr<Handle>* dest2) |
+ void run(std::unique_ptr<Handle> src, std::unique_ptr<Handle>* dest1, std::unique_ptr<Handle>* dest2) |
{ |
- m_thread = adoptPtr(new Thread("src thread", Thread::WithExecutionContext)); |
- m_waitableEvent = adoptPtr(new WaitableEvent()); |
+ m_thread = wrapUnique(new Thread("src thread", Thread::WithExecutionContext)); |
+ m_waitableEvent = wrapUnique(new WaitableEvent()); |
m_thread->thread()->postTask(BLINK_FROM_HERE, threadSafeBind(&TeeCreationThread<Handle>::runInternal, AllowCrossThreadAccess(this), passed(std::move(src)), AllowCrossThreadAccess(dest1), AllowCrossThreadAccess(dest2))); |
m_waitableEvent->wait(); |
} |
@@ -64,24 +66,24 @@ public: |
Thread* getThread() { return m_thread.get(); } |
private: |
- void runInternal(PassOwnPtr<Handle> src, OwnPtr<Handle>* dest1, OwnPtr<Handle>* dest2) |
+ void runInternal(std::unique_ptr<Handle> src, std::unique_ptr<Handle>* dest1, std::unique_ptr<Handle>* dest2) |
{ |
DataConsumerTee::create(m_thread->getExecutionContext(), std::move(src), dest1, dest2); |
m_waitableEvent->signal(); |
} |
- OwnPtr<Thread> m_thread; |
- OwnPtr<WaitableEvent> m_waitableEvent; |
+ std::unique_ptr<Thread> m_thread; |
+ std::unique_ptr<WaitableEvent> m_waitableEvent; |
}; |
TEST(DataConsumerTeeTest, CreateDone) |
{ |
- OwnPtr<Handle> src(Handle::create()); |
- OwnPtr<WebDataConsumerHandle> dest1, dest2; |
+ std::unique_ptr<Handle> src(Handle::create()); |
+ std::unique_ptr<WebDataConsumerHandle> dest1, dest2; |
src->add(Command(Command::Done)); |
- OwnPtr<TeeCreationThread<WebDataConsumerHandle>> t = adoptPtr(new TeeCreationThread<WebDataConsumerHandle>()); |
+ std::unique_ptr<TeeCreationThread<WebDataConsumerHandle>> t = wrapUnique(new TeeCreationThread<WebDataConsumerHandle>()); |
t->run(std::move(src), &dest1, &dest2); |
ASSERT_TRUE(dest1); |
@@ -89,8 +91,8 @@ TEST(DataConsumerTeeTest, CreateDone) |
HandleReaderRunner<HandleReader> r1(std::move(dest1)), r2(std::move(dest2)); |
- OwnPtr<HandleReadResult> res1 = r1.wait(); |
- OwnPtr<HandleReadResult> res2 = r2.wait(); |
+ std::unique_ptr<HandleReadResult> res1 = r1.wait(); |
+ std::unique_ptr<HandleReadResult> res2 = r2.wait(); |
EXPECT_EQ(kDone, res1->result()); |
EXPECT_EQ(0u, res1->data().size()); |
@@ -100,8 +102,8 @@ TEST(DataConsumerTeeTest, CreateDone) |
TEST(DataConsumerTeeTest, Read) |
{ |
- OwnPtr<Handle> src(Handle::create()); |
- OwnPtr<WebDataConsumerHandle> dest1, dest2; |
+ std::unique_ptr<Handle> src(Handle::create()); |
+ std::unique_ptr<WebDataConsumerHandle> dest1, dest2; |
src->add(Command(Command::Wait)); |
src->add(Command(Command::Data, "hello, ")); |
@@ -111,7 +113,7 @@ TEST(DataConsumerTeeTest, Read) |
src->add(Command(Command::Wait)); |
src->add(Command(Command::Done)); |
- OwnPtr<TeeCreationThread<WebDataConsumerHandle>> t = adoptPtr(new TeeCreationThread<WebDataConsumerHandle>()); |
+ std::unique_ptr<TeeCreationThread<WebDataConsumerHandle>> t = wrapUnique(new TeeCreationThread<WebDataConsumerHandle>()); |
t->run(std::move(src), &dest1, &dest2); |
ASSERT_TRUE(dest1); |
@@ -120,8 +122,8 @@ TEST(DataConsumerTeeTest, Read) |
HandleReaderRunner<HandleReader> r1(std::move(dest1)); |
HandleReaderRunner<HandleReader> r2(std::move(dest2)); |
- OwnPtr<HandleReadResult> res1 = r1.wait(); |
- OwnPtr<HandleReadResult> res2 = r2.wait(); |
+ std::unique_ptr<HandleReadResult> res1 = r1.wait(); |
+ std::unique_ptr<HandleReadResult> res2 = r2.wait(); |
EXPECT_EQ(kDone, res1->result()); |
EXPECT_EQ("hello, world", toString(res1->data())); |
@@ -132,8 +134,8 @@ TEST(DataConsumerTeeTest, Read) |
TEST(DataConsumerTeeTest, TwoPhaseRead) |
{ |
- OwnPtr<Handle> src(Handle::create()); |
- OwnPtr<WebDataConsumerHandle> dest1, dest2; |
+ std::unique_ptr<Handle> src(Handle::create()); |
+ std::unique_ptr<WebDataConsumerHandle> dest1, dest2; |
src->add(Command(Command::Wait)); |
src->add(Command(Command::Data, "hello, ")); |
@@ -144,7 +146,7 @@ TEST(DataConsumerTeeTest, TwoPhaseRead) |
src->add(Command(Command::Wait)); |
src->add(Command(Command::Done)); |
- OwnPtr<TeeCreationThread<WebDataConsumerHandle>> t = adoptPtr(new TeeCreationThread<WebDataConsumerHandle>()); |
+ std::unique_ptr<TeeCreationThread<WebDataConsumerHandle>> t = wrapUnique(new TeeCreationThread<WebDataConsumerHandle>()); |
t->run(std::move(src), &dest1, &dest2); |
ASSERT_TRUE(dest1); |
@@ -153,8 +155,8 @@ TEST(DataConsumerTeeTest, TwoPhaseRead) |
HandleReaderRunner<HandleTwoPhaseReader> r1(std::move(dest1)); |
HandleReaderRunner<HandleTwoPhaseReader> r2(std::move(dest2)); |
- OwnPtr<HandleReadResult> res1 = r1.wait(); |
- OwnPtr<HandleReadResult> res2 = r2.wait(); |
+ std::unique_ptr<HandleReadResult> res1 = r1.wait(); |
+ std::unique_ptr<HandleReadResult> res2 = r2.wait(); |
EXPECT_EQ(kDone, res1->result()); |
EXPECT_EQ("hello, world", toString(res1->data())); |
@@ -165,14 +167,14 @@ TEST(DataConsumerTeeTest, TwoPhaseRead) |
TEST(DataConsumerTeeTest, Error) |
{ |
- OwnPtr<Handle> src(Handle::create()); |
- OwnPtr<WebDataConsumerHandle> dest1, dest2; |
+ std::unique_ptr<Handle> src(Handle::create()); |
+ std::unique_ptr<WebDataConsumerHandle> dest1, dest2; |
src->add(Command(Command::Data, "hello, ")); |
src->add(Command(Command::Data, "world")); |
src->add(Command(Command::Error)); |
- OwnPtr<TeeCreationThread<WebDataConsumerHandle>> t = adoptPtr(new TeeCreationThread<WebDataConsumerHandle>()); |
+ std::unique_ptr<TeeCreationThread<WebDataConsumerHandle>> t = wrapUnique(new TeeCreationThread<WebDataConsumerHandle>()); |
t->run(std::move(src), &dest1, &dest2); |
ASSERT_TRUE(dest1); |
@@ -181,8 +183,8 @@ TEST(DataConsumerTeeTest, Error) |
HandleReaderRunner<HandleReader> r1(std::move(dest1)); |
HandleReaderRunner<HandleReader> r2(std::move(dest2)); |
- OwnPtr<HandleReadResult> res1 = r1.wait(); |
- OwnPtr<HandleReadResult> res2 = r2.wait(); |
+ std::unique_ptr<HandleReadResult> res1 = r1.wait(); |
+ std::unique_ptr<HandleReadResult> res2 = r2.wait(); |
EXPECT_EQ(kUnexpectedError, res1->result()); |
EXPECT_EQ(kUnexpectedError, res2->result()); |
@@ -195,13 +197,13 @@ void postStop(Thread* thread) |
TEST(DataConsumerTeeTest, StopSource) |
{ |
- OwnPtr<Handle> src(Handle::create()); |
- OwnPtr<WebDataConsumerHandle> dest1, dest2; |
+ std::unique_ptr<Handle> src(Handle::create()); |
+ std::unique_ptr<WebDataConsumerHandle> dest1, dest2; |
src->add(Command(Command::Data, "hello, ")); |
src->add(Command(Command::Data, "world")); |
- OwnPtr<TeeCreationThread<WebDataConsumerHandle>> t = adoptPtr(new TeeCreationThread<WebDataConsumerHandle>()); |
+ std::unique_ptr<TeeCreationThread<WebDataConsumerHandle>> t = wrapUnique(new TeeCreationThread<WebDataConsumerHandle>()); |
t->run(std::move(src), &dest1, &dest2); |
ASSERT_TRUE(dest1); |
@@ -214,8 +216,8 @@ TEST(DataConsumerTeeTest, StopSource) |
// t->thread() is alive. |
t->getThread()->thread()->postTask(BLINK_FROM_HERE, threadSafeBind(postStop, AllowCrossThreadAccess(t->getThread()))); |
- OwnPtr<HandleReadResult> res1 = r1.wait(); |
- OwnPtr<HandleReadResult> res2 = r2.wait(); |
+ std::unique_ptr<HandleReadResult> res1 = r1.wait(); |
+ std::unique_ptr<HandleReadResult> res2 = r2.wait(); |
EXPECT_EQ(kUnexpectedError, res1->result()); |
EXPECT_EQ(kUnexpectedError, res2->result()); |
@@ -223,13 +225,13 @@ TEST(DataConsumerTeeTest, StopSource) |
TEST(DataConsumerTeeTest, DetachSource) |
{ |
- OwnPtr<Handle> src(Handle::create()); |
- OwnPtr<WebDataConsumerHandle> dest1, dest2; |
+ std::unique_ptr<Handle> src(Handle::create()); |
+ std::unique_ptr<WebDataConsumerHandle> dest1, dest2; |
src->add(Command(Command::Data, "hello, ")); |
src->add(Command(Command::Data, "world")); |
- OwnPtr<TeeCreationThread<WebDataConsumerHandle>> t = adoptPtr(new TeeCreationThread<WebDataConsumerHandle>()); |
+ std::unique_ptr<TeeCreationThread<WebDataConsumerHandle>> t = wrapUnique(new TeeCreationThread<WebDataConsumerHandle>()); |
t->run(std::move(src), &dest1, &dest2); |
ASSERT_TRUE(dest1); |
@@ -240,8 +242,8 @@ TEST(DataConsumerTeeTest, DetachSource) |
t = nullptr; |
- OwnPtr<HandleReadResult> res1 = r1.wait(); |
- OwnPtr<HandleReadResult> res2 = r2.wait(); |
+ std::unique_ptr<HandleReadResult> res1 = r1.wait(); |
+ std::unique_ptr<HandleReadResult> res2 = r2.wait(); |
EXPECT_EQ(kUnexpectedError, res1->result()); |
EXPECT_EQ(kUnexpectedError, res2->result()); |
@@ -249,21 +251,21 @@ TEST(DataConsumerTeeTest, DetachSource) |
TEST(DataConsumerTeeTest, DetachSourceAfterReadingDone) |
{ |
- OwnPtr<Handle> src(Handle::create()); |
- OwnPtr<WebDataConsumerHandle> dest1, dest2; |
+ std::unique_ptr<Handle> src(Handle::create()); |
+ std::unique_ptr<WebDataConsumerHandle> dest1, dest2; |
src->add(Command(Command::Data, "hello, ")); |
src->add(Command(Command::Data, "world")); |
src->add(Command(Command::Done)); |
- OwnPtr<TeeCreationThread<WebDataConsumerHandle>> t = adoptPtr(new TeeCreationThread<WebDataConsumerHandle>()); |
+ std::unique_ptr<TeeCreationThread<WebDataConsumerHandle>> t = wrapUnique(new TeeCreationThread<WebDataConsumerHandle>()); |
t->run(std::move(src), &dest1, &dest2); |
ASSERT_TRUE(dest1); |
ASSERT_TRUE(dest2); |
HandleReaderRunner<HandleReader> r1(std::move(dest1)); |
- OwnPtr<HandleReadResult> res1 = r1.wait(); |
+ std::unique_ptr<HandleReadResult> res1 = r1.wait(); |
EXPECT_EQ(kDone, res1->result()); |
EXPECT_EQ("hello, world", toString(res1->data())); |
@@ -271,7 +273,7 @@ TEST(DataConsumerTeeTest, DetachSourceAfterReadingDone) |
t = nullptr; |
HandleReaderRunner<HandleReader> r2(std::move(dest2)); |
- OwnPtr<HandleReadResult> res2 = r2.wait(); |
+ std::unique_ptr<HandleReadResult> res2 = r2.wait(); |
EXPECT_EQ(kDone, res2->result()); |
EXPECT_EQ("hello, world", toString(res2->data())); |
@@ -279,14 +281,14 @@ TEST(DataConsumerTeeTest, DetachSourceAfterReadingDone) |
TEST(DataConsumerTeeTest, DetachOneDestination) |
{ |
- OwnPtr<Handle> src(Handle::create()); |
- OwnPtr<WebDataConsumerHandle> dest1, dest2; |
+ std::unique_ptr<Handle> src(Handle::create()); |
+ std::unique_ptr<WebDataConsumerHandle> dest1, dest2; |
src->add(Command(Command::Data, "hello, ")); |
src->add(Command(Command::Data, "world")); |
src->add(Command(Command::Done)); |
- OwnPtr<TeeCreationThread<WebDataConsumerHandle>> t = adoptPtr(new TeeCreationThread<WebDataConsumerHandle>()); |
+ std::unique_ptr<TeeCreationThread<WebDataConsumerHandle>> t = wrapUnique(new TeeCreationThread<WebDataConsumerHandle>()); |
t->run(std::move(src), &dest1, &dest2); |
ASSERT_TRUE(dest1); |
@@ -295,7 +297,7 @@ TEST(DataConsumerTeeTest, DetachOneDestination) |
dest1 = nullptr; |
HandleReaderRunner<HandleReader> r2(std::move(dest2)); |
- OwnPtr<HandleReadResult> res2 = r2.wait(); |
+ std::unique_ptr<HandleReadResult> res2 = r2.wait(); |
EXPECT_EQ(kDone, res2->result()); |
EXPECT_EQ("hello, world", toString(res2->data())); |
@@ -303,14 +305,14 @@ TEST(DataConsumerTeeTest, DetachOneDestination) |
TEST(DataConsumerTeeTest, DetachBothDestinationsShouldStopSourceReader) |
{ |
- OwnPtr<Handle> src(Handle::create()); |
+ std::unique_ptr<Handle> src(Handle::create()); |
RefPtr<Handle::Context> context(src->getContext()); |
- OwnPtr<WebDataConsumerHandle> dest1, dest2; |
+ std::unique_ptr<WebDataConsumerHandle> dest1, dest2; |
src->add(Command(Command::Data, "hello, ")); |
src->add(Command(Command::Data, "world")); |
- OwnPtr<TeeCreationThread<WebDataConsumerHandle>> t = adoptPtr(new TeeCreationThread<WebDataConsumerHandle>()); |
+ std::unique_ptr<TeeCreationThread<WebDataConsumerHandle>> t = wrapUnique(new TeeCreationThread<WebDataConsumerHandle>()); |
t->run(std::move(src), &dest1, &dest2); |
ASSERT_TRUE(dest1); |
@@ -327,8 +329,8 @@ TEST(DataConsumerTeeTest, DetachBothDestinationsShouldStopSourceReader) |
TEST(FetchDataConsumerTeeTest, Create) |
{ |
RefPtr<BlobDataHandle> blobDataHandle = BlobDataHandle::create(); |
- OwnPtr<MockFetchDataConsumerHandle> src(MockFetchDataConsumerHandle::create()); |
- OwnPtr<MockFetchDataConsumerReader> reader(MockFetchDataConsumerReader::create()); |
+ std::unique_ptr<MockFetchDataConsumerHandle> src(MockFetchDataConsumerHandle::create()); |
+ std::unique_ptr<MockFetchDataConsumerReader> reader(MockFetchDataConsumerReader::create()); |
Checkpoint checkpoint; |
InSequence s; |
@@ -339,10 +341,10 @@ TEST(FetchDataConsumerTeeTest, Create) |
EXPECT_CALL(checkpoint, Call(2)); |
// |reader| is adopted by |obtainReader|. |
- ASSERT_TRUE(reader.leakPtr()); |
+ ASSERT_TRUE(reader.release()); |
- OwnPtr<FetchDataConsumerHandle> dest1, dest2; |
- OwnPtr<TeeCreationThread<FetchDataConsumerHandle>> t = adoptPtr(new TeeCreationThread<FetchDataConsumerHandle>()); |
+ std::unique_ptr<FetchDataConsumerHandle> dest1, dest2; |
+ std::unique_ptr<TeeCreationThread<FetchDataConsumerHandle>> t = wrapUnique(new TeeCreationThread<FetchDataConsumerHandle>()); |
checkpoint.Call(1); |
t->run(std::move(src), &dest1, &dest2); |
@@ -357,8 +359,8 @@ TEST(FetchDataConsumerTeeTest, Create) |
TEST(FetchDataConsumerTeeTest, CreateFromBlobWithInvalidSize) |
{ |
RefPtr<BlobDataHandle> blobDataHandle = BlobDataHandle::create(BlobData::create(), -1); |
- OwnPtr<MockFetchDataConsumerHandle> src(MockFetchDataConsumerHandle::create()); |
- OwnPtr<MockFetchDataConsumerReader> reader(MockFetchDataConsumerReader::create()); |
+ std::unique_ptr<MockFetchDataConsumerHandle> src(MockFetchDataConsumerHandle::create()); |
+ std::unique_ptr<MockFetchDataConsumerReader> reader(MockFetchDataConsumerReader::create()); |
Checkpoint checkpoint; |
InSequence s; |
@@ -369,10 +371,10 @@ TEST(FetchDataConsumerTeeTest, CreateFromBlobWithInvalidSize) |
EXPECT_CALL(checkpoint, Call(2)); |
// |reader| is adopted by |obtainReader|. |
- ASSERT_TRUE(reader.leakPtr()); |
+ ASSERT_TRUE(reader.release()); |
- OwnPtr<FetchDataConsumerHandle> dest1, dest2; |
- OwnPtr<TeeCreationThread<FetchDataConsumerHandle>> t = adoptPtr(new TeeCreationThread<FetchDataConsumerHandle>()); |
+ std::unique_ptr<FetchDataConsumerHandle> dest1, dest2; |
+ std::unique_ptr<TeeCreationThread<FetchDataConsumerHandle>> t = wrapUnique(new TeeCreationThread<FetchDataConsumerHandle>()); |
checkpoint.Call(1); |
t->run(std::move(src), &dest1, &dest2); |
@@ -388,12 +390,12 @@ TEST(FetchDataConsumerTeeTest, CreateFromBlobWithInvalidSize) |
TEST(FetchDataConsumerTeeTest, CreateDone) |
{ |
- OwnPtr<Handle> src(Handle::create()); |
- OwnPtr<FetchDataConsumerHandle> dest1, dest2; |
+ std::unique_ptr<Handle> src(Handle::create()); |
+ std::unique_ptr<FetchDataConsumerHandle> dest1, dest2; |
src->add(Command(Command::Done)); |
- OwnPtr<TeeCreationThread<FetchDataConsumerHandle>> t = adoptPtr(new TeeCreationThread<FetchDataConsumerHandle>()); |
+ std::unique_ptr<TeeCreationThread<FetchDataConsumerHandle>> t = wrapUnique(new TeeCreationThread<FetchDataConsumerHandle>()); |
t->run(createFetchDataConsumerHandleFromWebHandle(std::move(src)), &dest1, &dest2); |
ASSERT_TRUE(dest1); |
@@ -404,8 +406,8 @@ TEST(FetchDataConsumerTeeTest, CreateDone) |
HandleReaderRunner<HandleReader> r1(std::move(dest1)), r2(std::move(dest2)); |
- OwnPtr<HandleReadResult> res1 = r1.wait(); |
- OwnPtr<HandleReadResult> res2 = r2.wait(); |
+ std::unique_ptr<HandleReadResult> res1 = r1.wait(); |
+ std::unique_ptr<HandleReadResult> res2 = r2.wait(); |
EXPECT_EQ(kDone, res1->result()); |
EXPECT_EQ(0u, res1->data().size()); |