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

Side by Side Diff: third_party/crashpad/crashpad/util/mach/mach_message_server_test.cc

Issue 2773813002: Update Crashpad to 8e37886d418dd042c3c7bfadac99214739ee4d98 (Closed)
Patch Set: Update Crashpad to 8e37886d418dd042c3c7bfadac99214739ee4d98 Created 3 years, 9 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Crashpad Authors. All rights reserved. 1 // Copyright 2014 The Crashpad Authors. All rights reserved.
2 // 2 //
3 // Licensed under the Apache License, Version 2.0 (the "License"); 3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License. 4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at 5 // You may obtain a copy of the License at
6 // 6 //
7 // http://www.apache.org/licenses/LICENSE-2.0 7 // http://www.apache.org/licenses/LICENSE-2.0
8 // 8 //
9 // Unless required by applicable law or agreed to in writing, software 9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS, 10 // distributed under the License is distributed on an "AS IS" BASIS,
(...skipping 326 matching lines...) Expand 10 before | Expand all | Expand 10 after
337 337
338 if (options_.child_wait_for_parent_pipe_early) { 338 if (options_.child_wait_for_parent_pipe_early) {
339 // Tell the child to begin sending messages. 339 // Tell the child to begin sending messages.
340 char c = '\0'; 340 char c = '\0';
341 CheckedWriteFile(WritePipeHandle(), &c, 1); 341 CheckedWriteFile(WritePipeHandle(), &c, 1);
342 } 342 }
343 343
344 if (options_.parent_wait_for_child_pipe) { 344 if (options_.parent_wait_for_child_pipe) {
345 // Wait until the child is done sending what it’s going to send. 345 // Wait until the child is done sending what it’s going to send.
346 char c; 346 char c;
347 CheckedReadFile(ReadPipeHandle(), &c, 1); 347 CheckedReadFileExactly(ReadPipeHandle(), &c, 1);
348 EXPECT_EQ('\0', c); 348 EXPECT_EQ('\0', c);
349 } 349 }
350 350
351 ASSERT_EQ(options_.expect_server_result, 351 ASSERT_EQ(options_.expect_server_result,
352 (kr = MachMessageServer::Run(this, 352 (kr = MachMessageServer::Run(this,
353 local_port, 353 local_port,
354 options_.server_options, 354 options_.server_options,
355 options_.server_persistent, 355 options_.server_persistent,
356 options_.server_receive_large, 356 options_.server_receive_large,
357 options_.server_timeout_ms))) 357 options_.server_timeout_ms)))
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
390 // Let the child know it’s safe to exit. 390 // Let the child know it’s safe to exit.
391 char c = '\0'; 391 char c = '\0';
392 CheckedWriteFile(WritePipeHandle(), &c, 1); 392 CheckedWriteFile(WritePipeHandle(), &c, 1);
393 } 393 }
394 } 394 }
395 395
396 void MachMultiprocessChild() override { 396 void MachMultiprocessChild() override {
397 if (options_.child_wait_for_parent_pipe_early) { 397 if (options_.child_wait_for_parent_pipe_early) {
398 // Wait until the parent is done setting things up on its end. 398 // Wait until the parent is done setting things up on its end.
399 char c; 399 char c;
400 CheckedReadFile(ReadPipeHandle(), &c, 1); 400 CheckedReadFileExactly(ReadPipeHandle(), &c, 1);
401 EXPECT_EQ('\0', c); 401 EXPECT_EQ('\0', c);
402 } 402 }
403 403
404 for (size_t index = 0; 404 for (size_t index = 0;
405 index < options_.client_send_request_count; 405 index < options_.client_send_request_count;
406 ++index) { 406 ++index) {
407 if (options_.child_send_all_requests_before_receiving_any_replies) { 407 if (options_.child_send_all_requests_before_receiving_any_replies) {
408 // For this test, all of the messages need to go into the queue before 408 // For this test, all of the messages need to go into the queue before
409 // the parent is allowed to start processing them. Don’t attempt to 409 // the parent is allowed to start processing them. Don’t attempt to
410 // process replies before all of the requests are sent, because the 410 // process replies before all of the requests are sent, because the
(...skipping 13 matching lines...) Expand all
424 424
425 for (size_t index = 0; 425 for (size_t index = 0;
426 index < options_.client_send_request_count; 426 index < options_.client_send_request_count;
427 ++index) { 427 ++index) {
428 ASSERT_NO_FATAL_FAILURE(ChildWaitForReply()); 428 ASSERT_NO_FATAL_FAILURE(ChildWaitForReply());
429 } 429 }
430 } 430 }
431 431
432 if (options_.child_wait_for_parent_pipe_late) { 432 if (options_.child_wait_for_parent_pipe_late) {
433 char c; 433 char c;
434 CheckedReadFile(ReadPipeHandle(), &c, 1); 434 CheckedReadFileExactly(ReadPipeHandle(), &c, 1);
435 ASSERT_EQ('\0', c); 435 ASSERT_EQ('\0', c);
436 } 436 }
437 } 437 }
438 438
439 // In the child process, sends a request message to the server. 439 // In the child process, sends a request message to the server.
440 void ChildSendRequest() { 440 void ChildSendRequest() {
441 // local_receive_port_owner will the receive right that is created in this 441 // local_receive_port_owner will the receive right that is created in this
442 // scope and intended to be destroyed when leaving this scope, after it has 442 // scope and intended to be destroyed when leaving this scope, after it has
443 // been carried in a Mach message. 443 // been carried in a Mach message.
444 base::mac::ScopedMachReceiveRight local_receive_port_owner; 444 base::mac::ScopedMachReceiveRight local_receive_port_owner;
(...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after
847 options.expect_server_transaction_count = 0; 847 options.expect_server_transaction_count = 0;
848 options.client_send_large = true; 848 options.client_send_large = true;
849 options.client_expect_reply = false; 849 options.client_expect_reply = false;
850 TestMachMessageServer test_mach_message_server(options); 850 TestMachMessageServer test_mach_message_server(options);
851 test_mach_message_server.Test(); 851 test_mach_message_server.Test();
852 } 852 }
853 853
854 } // namespace 854 } // namespace
855 } // namespace test 855 } // namespace test
856 } // namespace crashpad 856 } // namespace crashpad
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698