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

Side by Side Diff: content/browser/loader/async_resource_handler_unittest.cc

Issue 2506363005: Send encoded_body_length to renderer when response completed (3/3) (Closed)
Patch Set: rebase Created 4 years 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 unified diff | Download patch
« no previous file with comments | « content/browser/loader/async_resource_handler.cc ('k') | content/child/resource_dispatcher.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/loader/async_resource_handler.h" 5 #include "content/browser/loader/async_resource_handler.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 #include <memory> 9 #include <memory>
10 #include <string> 10 #include <string>
(...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 constexpr auto kDataSize = 4096; 255 constexpr auto kDataSize = 4096;
256 StartRequestAndWaitWithResponseDataSize(kDataSize); 256 StartRequestAndWaitWithResponseDataSize(kDataSize);
257 const auto& messages = filter_->messages(); 257 const auto& messages = filter_->messages();
258 ASSERT_EQ(4u, messages.size()); 258 ASSERT_EQ(4u, messages.size());
259 ASSERT_EQ(ResourceMsg_DataReceived::ID, messages[2]->type()); 259 ASSERT_EQ(ResourceMsg_DataReceived::ID, messages[2]->type());
260 ResourceMsg_DataReceived::Param params; 260 ResourceMsg_DataReceived::Param params;
261 ResourceMsg_DataReceived::Read(messages[2].get(), &params); 261 ResourceMsg_DataReceived::Read(messages[2].get(), &params);
262 262
263 int encoded_data_length = std::get<3>(params); 263 int encoded_data_length = std::get<3>(params);
264 EXPECT_EQ(kDataSize, encoded_data_length); 264 EXPECT_EQ(kDataSize, encoded_data_length);
265 int encoded_body_length = std::get<4>(params);
266 EXPECT_EQ(kDataSize, encoded_body_length);
267 265
268 ASSERT_EQ(ResourceMsg_RequestComplete::ID, messages[3]->type()); 266 ASSERT_EQ(ResourceMsg_RequestComplete::ID, messages[3]->type());
269 ResourceMsg_RequestComplete::Param completion_params; 267 ResourceMsg_RequestComplete::Param completion_params;
270 ResourceMsg_RequestComplete::Read(messages[3].get(), &completion_params); 268 ResourceMsg_RequestComplete::Read(messages[3].get(), &completion_params);
271 ResourceRequestCompletionStatus completion_status = 269 ResourceRequestCompletionStatus completion_status =
272 std::get<1>(completion_params); 270 std::get<1>(completion_params);
273 271
274 EXPECT_EQ(TotalReceivedBytes(kDataSize), 272 EXPECT_EQ(TotalReceivedBytes(kDataSize),
275 completion_status.encoded_data_length); 273 completion_status.encoded_data_length);
276 EXPECT_EQ(kDataSize, completion_status.encoded_body_length); 274 EXPECT_EQ(kDataSize, completion_status.encoded_body_length);
(...skipping 10 matching lines...) Expand all
287 constexpr auto kDataSize = 8; 285 constexpr auto kDataSize = 8;
288 StartRequestAndWaitWithResponseDataSize(kDataSize); 286 StartRequestAndWaitWithResponseDataSize(kDataSize);
289 const auto& messages = filter_->messages(); 287 const auto& messages = filter_->messages();
290 ASSERT_EQ(3u, messages.size()); 288 ASSERT_EQ(3u, messages.size());
291 ASSERT_EQ(ResourceMsg_InlinedDataChunkReceived::ID, messages[1]->type()); 289 ASSERT_EQ(ResourceMsg_InlinedDataChunkReceived::ID, messages[1]->type());
292 ResourceMsg_InlinedDataChunkReceived::Param params; 290 ResourceMsg_InlinedDataChunkReceived::Param params;
293 ResourceMsg_InlinedDataChunkReceived::Read(messages[1].get(), &params); 291 ResourceMsg_InlinedDataChunkReceived::Read(messages[1].get(), &params);
294 292
295 int encoded_data_length = std::get<2>(params); 293 int encoded_data_length = std::get<2>(params);
296 EXPECT_EQ(kDataSize, encoded_data_length); 294 EXPECT_EQ(kDataSize, encoded_data_length);
297 int encoded_body_length = std::get<3>(params);
298 EXPECT_EQ(kDataSize, encoded_body_length);
299 295
300 ASSERT_EQ(ResourceMsg_RequestComplete::ID, messages[2]->type()); 296 ASSERT_EQ(ResourceMsg_RequestComplete::ID, messages[2]->type());
301 ResourceMsg_RequestComplete::Param completion_params; 297 ResourceMsg_RequestComplete::Param completion_params;
302 ResourceMsg_RequestComplete::Read(messages[2].get(), &completion_params); 298 ResourceMsg_RequestComplete::Read(messages[2].get(), &completion_params);
303 ResourceRequestCompletionStatus completion_status = 299 ResourceRequestCompletionStatus completion_status =
304 std::get<1>(completion_params); 300 std::get<1>(completion_params);
305 301
306 EXPECT_EQ(TotalReceivedBytes(kDataSize), 302 EXPECT_EQ(TotalReceivedBytes(kDataSize),
307 completion_status.encoded_data_length); 303 completion_status.encoded_data_length);
308 EXPECT_EQ(kDataSize, completion_status.encoded_body_length); 304 EXPECT_EQ(kDataSize, completion_status.encoded_body_length);
309 } 305 }
310 306
311 TEST_F(AsyncResourceHandlerTest, TwoChunksLengths) { 307 TEST_F(AsyncResourceHandlerTest, TwoChunksLengths) {
312 // Larger than kMaxAllocationSize. 308 // Larger than kMaxAllocationSize.
313 constexpr auto kDataSize = 64 * 1024; 309 constexpr auto kDataSize = 64 * 1024;
314 StartRequestAndWaitWithResponseDataSize(kDataSize); 310 StartRequestAndWaitWithResponseDataSize(kDataSize);
315 const auto& messages = filter_->messages(); 311 const auto& messages = filter_->messages();
316 ASSERT_EQ(5u, messages.size()); 312 ASSERT_EQ(5u, messages.size());
317 ASSERT_EQ(ResourceMsg_DataReceived::ID, messages[2]->type()); 313 ASSERT_EQ(ResourceMsg_DataReceived::ID, messages[2]->type());
318 ResourceMsg_DataReceived::Param params; 314 ResourceMsg_DataReceived::Param params;
319 ResourceMsg_DataReceived::Read(messages[2].get(), &params); 315 ResourceMsg_DataReceived::Read(messages[2].get(), &params);
320 316
321 int encoded_data_length = std::get<3>(params); 317 int encoded_data_length = std::get<3>(params);
322 EXPECT_EQ(32768, encoded_data_length); 318 EXPECT_EQ(32768, encoded_data_length);
323 int encoded_body_length = std::get<4>(params);
324 EXPECT_EQ(32768, encoded_body_length);
325 319
326 ASSERT_EQ(ResourceMsg_DataReceived::ID, messages[3]->type()); 320 ASSERT_EQ(ResourceMsg_DataReceived::ID, messages[3]->type());
327 ResourceMsg_DataReceived::Read(messages[3].get(), &params); 321 ResourceMsg_DataReceived::Read(messages[3].get(), &params);
328 322
329 encoded_data_length = std::get<3>(params); 323 encoded_data_length = std::get<3>(params);
330 EXPECT_EQ(32768, encoded_data_length); 324 EXPECT_EQ(32768, encoded_data_length);
331 encoded_body_length = std::get<4>(params);
332 EXPECT_EQ(32768, encoded_body_length);
333 325
334 ASSERT_EQ(ResourceMsg_RequestComplete::ID, messages[4]->type()); 326 ASSERT_EQ(ResourceMsg_RequestComplete::ID, messages[4]->type());
335 ResourceMsg_RequestComplete::Param completion_params; 327 ResourceMsg_RequestComplete::Param completion_params;
336 ResourceMsg_RequestComplete::Read(messages[4].get(), &completion_params); 328 ResourceMsg_RequestComplete::Read(messages[4].get(), &completion_params);
337 ResourceRequestCompletionStatus completion_status = 329 ResourceRequestCompletionStatus completion_status =
338 std::get<1>(completion_params); 330 std::get<1>(completion_params);
339 EXPECT_EQ(TotalReceivedBytes(kDataSize), 331 EXPECT_EQ(TotalReceivedBytes(kDataSize),
340 completion_status.encoded_data_length); 332 completion_status.encoded_data_length);
341 EXPECT_EQ(kDataSize, completion_status.encoded_body_length); 333 EXPECT_EQ(kDataSize, completion_status.encoded_body_length);
342 } 334 }
343 335
344 } // namespace 336 } // namespace
345 337
346 } // namespace content 338 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/loader/async_resource_handler.cc ('k') | content/child/resource_dispatcher.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698