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

Unified Diff: third_party/WebKit/Source/modules/fetch/FetchDataLoaderTest.cpp

Issue 2229313002: Make FetchDataLoader accept BytesConsumer (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@remove-c++-rs
Patch Set: fix Created 4 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
« no previous file with comments | « third_party/WebKit/Source/modules/fetch/FetchDataLoader.cpp ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/Source/modules/fetch/FetchDataLoaderTest.cpp
diff --git a/third_party/WebKit/Source/modules/fetch/FetchDataLoaderTest.cpp b/third_party/WebKit/Source/modules/fetch/FetchDataLoaderTest.cpp
index 169f07182e03932c38b836ce98f59b02d1222fca..6fe70056643752e33713bb255f60c210386d9ca6 100644
--- a/third_party/WebKit/Source/modules/fetch/FetchDataLoaderTest.cpp
+++ b/third_party/WebKit/Source/modules/fetch/FetchDataLoaderTest.cpp
@@ -4,6 +4,7 @@
#include "modules/fetch/FetchDataLoader.h"
+#include "modules/fetch/BytesConsumerForDataConsumerHandle.h"
#include "modules/fetch/DataConsumerHandleTestUtil.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -26,15 +27,16 @@ using MockFetchDataLoaderClient = DataConsumerHandleTestUtil::MockFetchDataLoade
using MockHandle = DataConsumerHandleTestUtil::MockFetchDataConsumerHandle;
using MockReader = DataConsumerHandleTestUtil::MockFetchDataConsumerReader;
-const WebDataConsumerHandle::Result kOk = WebDataConsumerHandle::Ok;
-const WebDataConsumerHandle::Result kUnexpectedError = WebDataConsumerHandle::UnexpectedError;
-const WebDataConsumerHandle::Result kDone = WebDataConsumerHandle::Done;
-const WebDataConsumerHandle::Flags kNone = WebDataConsumerHandle::FlagNone;
-const FetchDataConsumerHandle::Reader::BlobSizePolicy kDisallowBlobWithInvalidSize = FetchDataConsumerHandle::Reader::DisallowBlobWithInvalidSize;
+constexpr WebDataConsumerHandle::Result kOk = WebDataConsumerHandle::Ok;
+constexpr WebDataConsumerHandle::Result kUnexpectedError = WebDataConsumerHandle::UnexpectedError;
+constexpr WebDataConsumerHandle::Result kShouldWait = WebDataConsumerHandle::ShouldWait;
+constexpr WebDataConsumerHandle::Result kDone = WebDataConsumerHandle::Done;
+constexpr WebDataConsumerHandle::Flags kNone = WebDataConsumerHandle::FlagNone;
+constexpr FetchDataConsumerHandle::Reader::BlobSizePolicy kDisallowBlobWithInvalidSize = FetchDataConsumerHandle::Reader::DisallowBlobWithInvalidSize;
-const char kQuickBrownFox[] = "Quick brown fox";
-const size_t kQuickBrownFoxLength = 15;
-const size_t kQuickBrownFoxLengthWithTerminatingNull = 16;
+constexpr char kQuickBrownFox[] = "Quick brown fox";
+constexpr size_t kQuickBrownFoxLength = 15;
+constexpr size_t kQuickBrownFoxLengthWithTerminatingNull = 16;
TEST(FetchDataLoaderTest, LoadAsBlob)
{
@@ -54,7 +56,9 @@ TEST(FetchDataLoaderTest, LoadAsBlob)
EXPECT_CALL(checkpoint, Call(1));
EXPECT_CALL(*handle, obtainFetchDataReader(_)).WillOnce(DoAll(SaveArg<0>(&client), Return(ByMove(WTF::wrapUnique(reader)))));
EXPECT_CALL(*reader, drainAsBlobDataHandle(kDisallowBlobWithInvalidSize)).WillOnce(Return(nullptr));
+ EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(nullptr), SetArgPointee<2>(0), Return(kShouldWait)));
EXPECT_CALL(checkpoint, Call(2));
+ EXPECT_CALL(*reader, read(nullptr, kNone, 0, _)).WillOnce(DoAll(SetArgPointee<3>(0), Return(kShouldWait)));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(static_cast<const void*>(kQuickBrownFox)), SetArgPointee<2>(kQuickBrownFoxLengthWithTerminatingNull), Return(kOk)));
EXPECT_CALL(*reader, endRead(kQuickBrownFoxLengthWithTerminatingNull)).WillOnce(Return(kOk));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(Return(kDone));
@@ -64,7 +68,7 @@ TEST(FetchDataLoaderTest, LoadAsBlob)
EXPECT_CALL(checkpoint, Call(4));
checkpoint.Call(1);
- fetchDataLoader->start(handle.get(), fetchDataLoaderClient);
+ fetchDataLoader->start(new BytesConsumerForDataConsumerHandle(std::move(handle)), fetchDataLoaderClient);
checkpoint.Call(2);
ASSERT_TRUE(client);
client->didGetReadable();
@@ -94,7 +98,9 @@ TEST(FetchDataLoaderTest, LoadAsBlobFailed)
EXPECT_CALL(checkpoint, Call(1));
EXPECT_CALL(*handle, obtainFetchDataReader(_)).WillOnce(DoAll(SaveArg<0>(&client), Return(ByMove(WTF::wrapUnique(reader)))));
EXPECT_CALL(*reader, drainAsBlobDataHandle(kDisallowBlobWithInvalidSize)).WillOnce(Return(nullptr));
+ EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(nullptr), SetArgPointee<2>(0), Return(kShouldWait)));
EXPECT_CALL(checkpoint, Call(2));
+ EXPECT_CALL(*reader, read(nullptr, kNone, 0, _)).WillOnce(DoAll(SetArgPointee<3>(0), Return(kShouldWait)));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(static_cast<const void*>(kQuickBrownFox)), SetArgPointee<2>(kQuickBrownFoxLengthWithTerminatingNull), Return(kOk)));
EXPECT_CALL(*reader, endRead(kQuickBrownFoxLengthWithTerminatingNull)).WillOnce(Return(kOk));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(Return(kUnexpectedError));
@@ -104,7 +110,7 @@ TEST(FetchDataLoaderTest, LoadAsBlobFailed)
EXPECT_CALL(checkpoint, Call(4));
checkpoint.Call(1);
- fetchDataLoader->start(handle.get(), fetchDataLoaderClient);
+ fetchDataLoader->start(new BytesConsumerForDataConsumerHandle(std::move(handle)), fetchDataLoaderClient);
checkpoint.Call(2);
ASSERT_TRUE(client);
client->didGetReadable();
@@ -129,12 +135,13 @@ TEST(FetchDataLoaderTest, LoadAsBlobCancel)
EXPECT_CALL(checkpoint, Call(1));
EXPECT_CALL(*handle, obtainFetchDataReader(_)).WillOnce(Return(ByMove(WTF::wrapUnique(reader))));
EXPECT_CALL(*reader, drainAsBlobDataHandle(kDisallowBlobWithInvalidSize)).WillOnce(Return(nullptr));
+ EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(nullptr), SetArgPointee<2>(0), Return(kShouldWait)));
EXPECT_CALL(checkpoint, Call(2));
EXPECT_CALL(*reader, destruct());
EXPECT_CALL(checkpoint, Call(3));
checkpoint.Call(1);
- fetchDataLoader->start(handle.get(), fetchDataLoaderClient);
+ fetchDataLoader->start(new BytesConsumerForDataConsumerHandle(std::move(handle)), fetchDataLoaderClient);
checkpoint.Call(2);
fetchDataLoader->cancel();
checkpoint.Call(3);
@@ -168,7 +175,7 @@ TEST(FetchDataLoaderTest, LoadAsBlobViaDrainAsBlobDataHandleWithSameContentType)
EXPECT_CALL(checkpoint, Call(3));
checkpoint.Call(1);
- fetchDataLoader->start(handle.get(), fetchDataLoaderClient);
+ fetchDataLoader->start(new BytesConsumerForDataConsumerHandle(std::move(handle)), fetchDataLoaderClient);
checkpoint.Call(2);
fetchDataLoader->cancel();
checkpoint.Call(3);
@@ -207,7 +214,7 @@ TEST(FetchDataLoaderTest, LoadAsBlobViaDrainAsBlobDataHandleWithDifferentContent
EXPECT_CALL(checkpoint, Call(3));
checkpoint.Call(1);
- fetchDataLoader->start(handle.get(), fetchDataLoaderClient);
+ fetchDataLoader->start(new BytesConsumerForDataConsumerHandle(std::move(handle)), fetchDataLoaderClient);
checkpoint.Call(2);
fetchDataLoader->cancel();
checkpoint.Call(3);
@@ -235,7 +242,9 @@ TEST(FetchDataLoaderTest, LoadAsArrayBuffer)
InSequence s;
EXPECT_CALL(checkpoint, Call(1));
EXPECT_CALL(*handle, obtainFetchDataReader(_)).WillOnce(DoAll(SaveArg<0>(&client), Return(ByMove(WTF::wrapUnique(reader)))));
+ EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(nullptr), SetArgPointee<2>(0), Return(kShouldWait)));
EXPECT_CALL(checkpoint, Call(2));
+ EXPECT_CALL(*reader, read(nullptr, kNone, 0, _)).WillOnce(DoAll(SetArgPointee<3>(0), Return(kShouldWait)));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(static_cast<const void*>(kQuickBrownFox)), SetArgPointee<2>(kQuickBrownFoxLengthWithTerminatingNull), Return(kOk)));
EXPECT_CALL(*reader, endRead(kQuickBrownFoxLengthWithTerminatingNull)).WillOnce(Return(kOk));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(Return(kDone));
@@ -245,7 +254,7 @@ TEST(FetchDataLoaderTest, LoadAsArrayBuffer)
EXPECT_CALL(checkpoint, Call(4));
checkpoint.Call(1);
- fetchDataLoader->start(handle.get(), fetchDataLoaderClient);
+ fetchDataLoader->start(new BytesConsumerForDataConsumerHandle(std::move(handle)), fetchDataLoaderClient);
checkpoint.Call(2);
ASSERT_TRUE(client);
client->didGetReadable();
@@ -274,7 +283,9 @@ TEST(FetchDataLoaderTest, LoadAsArrayBufferFailed)
InSequence s;
EXPECT_CALL(checkpoint, Call(1));
EXPECT_CALL(*handle, obtainFetchDataReader(_)).WillOnce(DoAll(SaveArg<0>(&client), Return(ByMove(WTF::wrapUnique(reader)))));
+ EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(nullptr), SetArgPointee<2>(0), Return(kShouldWait)));
EXPECT_CALL(checkpoint, Call(2));
+ EXPECT_CALL(*reader, read(nullptr, kNone, 0, _)).WillOnce(DoAll(SetArgPointee<3>(0), Return(kShouldWait)));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(static_cast<const void*>(kQuickBrownFox)), SetArgPointee<2>(kQuickBrownFoxLengthWithTerminatingNull), Return(kOk)));
EXPECT_CALL(*reader, endRead(kQuickBrownFoxLengthWithTerminatingNull)).WillOnce(Return(kOk));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(Return(kUnexpectedError));
@@ -284,7 +295,7 @@ TEST(FetchDataLoaderTest, LoadAsArrayBufferFailed)
EXPECT_CALL(checkpoint, Call(4));
checkpoint.Call(1);
- fetchDataLoader->start(handle.get(), fetchDataLoaderClient);
+ fetchDataLoader->start(new BytesConsumerForDataConsumerHandle(std::move(handle)), fetchDataLoaderClient);
checkpoint.Call(2);
ASSERT_TRUE(client);
client->didGetReadable();
@@ -307,12 +318,13 @@ TEST(FetchDataLoaderTest, LoadAsArrayBufferCancel)
InSequence s;
EXPECT_CALL(checkpoint, Call(1));
EXPECT_CALL(*handle, obtainFetchDataReader(_)).WillOnce(Return(ByMove(WTF::wrapUnique(reader))));
+ EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(nullptr), SetArgPointee<2>(0), Return(kShouldWait)));
EXPECT_CALL(checkpoint, Call(2));
EXPECT_CALL(*reader, destruct());
EXPECT_CALL(checkpoint, Call(3));
checkpoint.Call(1);
- fetchDataLoader->start(handle.get(), fetchDataLoaderClient);
+ fetchDataLoader->start(new BytesConsumerForDataConsumerHandle(std::move(handle)), fetchDataLoaderClient);
checkpoint.Call(2);
fetchDataLoader->cancel();
checkpoint.Call(3);
@@ -334,7 +346,9 @@ TEST(FetchDataLoaderTest, LoadAsString)
InSequence s;
EXPECT_CALL(checkpoint, Call(1));
EXPECT_CALL(*handle, obtainFetchDataReader(_)).WillOnce(DoAll(SaveArg<0>(&client), Return(ByMove(WTF::wrapUnique(reader)))));
+ EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(nullptr), SetArgPointee<2>(0), Return(kShouldWait)));
EXPECT_CALL(checkpoint, Call(2));
+ EXPECT_CALL(*reader, read(nullptr, kNone, 0, _)).WillOnce(DoAll(SetArgPointee<3>(0), Return(kShouldWait)));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(static_cast<const void*>(kQuickBrownFox)), SetArgPointee<2>(kQuickBrownFoxLength), Return(kOk)));
EXPECT_CALL(*reader, endRead(kQuickBrownFoxLength)).WillOnce(Return(kOk));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(Return(kDone));
@@ -344,7 +358,7 @@ TEST(FetchDataLoaderTest, LoadAsString)
EXPECT_CALL(checkpoint, Call(4));
checkpoint.Call(1);
- fetchDataLoader->start(handle.get(), fetchDataLoaderClient);
+ fetchDataLoader->start(new BytesConsumerForDataConsumerHandle(std::move(handle)), fetchDataLoaderClient);
checkpoint.Call(2);
ASSERT_TRUE(client);
client->didGetReadable();
@@ -369,7 +383,9 @@ TEST(FetchDataLoaderTest, LoadAsStringWithNullBytes)
InSequence s;
EXPECT_CALL(checkpoint, Call(1));
EXPECT_CALL(*handle, obtainFetchDataReader(_)).WillOnce(DoAll(SaveArg<0>(&client), Return(ByMove(WTF::wrapUnique(reader)))));
+ EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(nullptr), SetArgPointee<2>(0), Return(kShouldWait)));
EXPECT_CALL(checkpoint, Call(2));
+ EXPECT_CALL(*reader, read(nullptr, kNone, 0, _)).WillOnce(DoAll(SetArgPointee<3>(0), Return(kShouldWait)));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(static_cast<const void*>("Quick\0brown\0fox")), SetArgPointee<2>(16), Return(kOk)));
EXPECT_CALL(*reader, endRead(kQuickBrownFoxLengthWithTerminatingNull)).WillOnce(Return(kOk));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(Return(kDone));
@@ -379,7 +395,7 @@ TEST(FetchDataLoaderTest, LoadAsStringWithNullBytes)
EXPECT_CALL(checkpoint, Call(4));
checkpoint.Call(1);
- fetchDataLoader->start(handle.get(), fetchDataLoaderClient);
+ fetchDataLoader->start(new BytesConsumerForDataConsumerHandle(std::move(handle)), fetchDataLoaderClient);
checkpoint.Call(2);
ASSERT_TRUE(client);
client->didGetReadable();
@@ -404,7 +420,9 @@ TEST(FetchDataLoaderTest, LoadAsStringError)
InSequence s;
EXPECT_CALL(checkpoint, Call(1));
EXPECT_CALL(*handle, obtainFetchDataReader(_)).WillOnce(DoAll(SaveArg<0>(&client), Return(ByMove(WTF::wrapUnique(reader)))));
+ EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(nullptr), SetArgPointee<2>(0), Return(kShouldWait)));
EXPECT_CALL(checkpoint, Call(2));
+ EXPECT_CALL(*reader, read(nullptr, kNone, 0, _)).WillOnce(DoAll(SetArgPointee<3>(0), Return(kShouldWait)));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(static_cast<const void*>(kQuickBrownFox)), SetArgPointee<2>(kQuickBrownFoxLength), Return(kOk)));
EXPECT_CALL(*reader, endRead(kQuickBrownFoxLength)).WillOnce(Return(kOk));
EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(Return(kUnexpectedError));
@@ -414,7 +432,7 @@ TEST(FetchDataLoaderTest, LoadAsStringError)
EXPECT_CALL(checkpoint, Call(4));
checkpoint.Call(1);
- fetchDataLoader->start(handle.get(), fetchDataLoaderClient);
+ fetchDataLoader->start(new BytesConsumerForDataConsumerHandle(std::move(handle)), fetchDataLoaderClient);
checkpoint.Call(2);
ASSERT_TRUE(client);
client->didGetReadable();
@@ -438,12 +456,13 @@ TEST(FetchDataLoaderTest, LoadAsStringCancel)
InSequence s;
EXPECT_CALL(checkpoint, Call(1));
EXPECT_CALL(*handle, obtainFetchDataReader(_)).WillOnce(Return(ByMove(WTF::wrapUnique(reader))));
+ EXPECT_CALL(*reader, beginRead(_, kNone, _)).WillOnce(DoAll(SetArgPointee<0>(nullptr), SetArgPointee<2>(0), Return(kShouldWait)));
EXPECT_CALL(checkpoint, Call(2));
EXPECT_CALL(*reader, destruct());
EXPECT_CALL(checkpoint, Call(3));
checkpoint.Call(1);
- fetchDataLoader->start(handle.get(), fetchDataLoaderClient);
+ fetchDataLoader->start(new BytesConsumerForDataConsumerHandle(std::move(handle)), fetchDataLoaderClient);
checkpoint.Call(2);
fetchDataLoader->cancel();
checkpoint.Call(3);
« no previous file with comments | « third_party/WebKit/Source/modules/fetch/FetchDataLoader.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698