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