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

Side by Side Diff: base/test/launcher/test_launcher.cc

Issue 485733002: Will no longer force jobs=1 with filters in bot mode. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "base/test/launcher/test_launcher.h" 5 #include "base/test/launcher/test_launcher.h"
6 6
7 #if defined(OS_POSIX) 7 #if defined(OS_POSIX)
8 #include <fcntl.h> 8 #include <fcntl.h>
9 #endif 9 #endif
10 10
(...skipping 611 matching lines...) Expand 10 before | Expand all | Expand 10 after
622 CHECK(UnsetEnvironmentVariableIfExists("GTEST_TOTAL_SHARDS")); 622 CHECK(UnsetEnvironmentVariableIfExists("GTEST_TOTAL_SHARDS"));
623 CHECK(UnsetEnvironmentVariableIfExists("GTEST_SHARD_INDEX")); 623 CHECK(UnsetEnvironmentVariableIfExists("GTEST_SHARD_INDEX"));
624 624
625 if (command_line->HasSwitch(kGTestRepeatFlag) && 625 if (command_line->HasSwitch(kGTestRepeatFlag) &&
626 !StringToInt(command_line->GetSwitchValueASCII(kGTestRepeatFlag), 626 !StringToInt(command_line->GetSwitchValueASCII(kGTestRepeatFlag),
627 &cycles_)) { 627 &cycles_)) {
628 LOG(ERROR) << "Invalid value for " << kGTestRepeatFlag; 628 LOG(ERROR) << "Invalid value for " << kGTestRepeatFlag;
629 return false; 629 return false;
630 } 630 }
631 631
632 if (CommandLine::ForCurrentProcess()->HasSwitch( 632 if (command_line->HasSwitch(switches::kTestLauncherRetryLimit)) {
633 switches::kTestLauncherRetryLimit)) {
634 int retry_limit = -1; 633 int retry_limit = -1;
635 if (!StringToInt(CommandLine::ForCurrentProcess()->GetSwitchValueASCII( 634 if (!StringToInt(command_line->GetSwitchValueASCII(
636 switches::kTestLauncherRetryLimit), &retry_limit) || 635 switches::kTestLauncherRetryLimit), &retry_limit) ||
637 retry_limit < 0) { 636 retry_limit < 0) {
638 LOG(ERROR) << "Invalid value for " << switches::kTestLauncherRetryLimit; 637 LOG(ERROR) << "Invalid value for " << switches::kTestLauncherRetryLimit;
639 return false; 638 return false;
640 } 639 }
641 640
642 retry_limit_ = retry_limit; 641 retry_limit_ = retry_limit;
643 } else if (!CommandLine::ForCurrentProcess()->HasSwitch(kGTestFilterFlag)) { 642 } else if (!command_line->HasSwitch(kGTestFilterFlag) || BotModeEnabled()) {
644 // Retry failures 3 times by default if we are running all of the tests. 643 // Retry failures 3 times by default if we are running all of the tests or
644 // in bot mode.
645 retry_limit_ = 3; 645 retry_limit_ = 3;
646 } 646 }
647 647
648 if (CommandLine::ForCurrentProcess()->HasSwitch( 648 if (command_line->HasSwitch(switches::kTestLauncherJobs)) {
649 switches::kTestLauncherJobs)) {
650 int jobs = -1; 649 int jobs = -1;
651 if (!StringToInt(CommandLine::ForCurrentProcess()->GetSwitchValueASCII( 650 if (!StringToInt(command_line->GetSwitchValueASCII(
652 switches::kTestLauncherJobs), &jobs) || 651 switches::kTestLauncherJobs), &jobs) ||
653 jobs < 0) { 652 jobs < 0) {
654 LOG(ERROR) << "Invalid value for " << switches::kTestLauncherJobs; 653 LOG(ERROR) << "Invalid value for " << switches::kTestLauncherJobs;
655 return false; 654 return false;
656 } 655 }
657 656
658 parallel_jobs_ = jobs; 657 parallel_jobs_ = jobs;
659 } else if (CommandLine::ForCurrentProcess()->HasSwitch(kGTestFilterFlag)) { 658 } else if (command_line->HasSwitch(kGTestFilterFlag) && !BotModeEnabled()) {
660 // Do not run jobs in parallel by default if we are running a subset of 659 // Do not run jobs in parallel by default if we are running a subset of
661 // the tests. 660 // the tests and if bot mode is off.
662 parallel_jobs_ = 1; 661 parallel_jobs_ = 1;
663 } 662 }
664 663
665 fprintf(stdout, "Using %" PRIuS " parallel jobs.\n", parallel_jobs_); 664 fprintf(stdout, "Using %" PRIuS " parallel jobs.\n", parallel_jobs_);
666 fflush(stdout); 665 fflush(stdout);
667 worker_pool_owner_.reset( 666 worker_pool_owner_.reset(
668 new SequencedWorkerPoolOwner(parallel_jobs_, "test_launcher")); 667 new SequencedWorkerPoolOwner(parallel_jobs_, "test_launcher"));
669 668
670 if (command_line->HasSwitch(switches::kTestLauncherFilterFile) && 669 if (command_line->HasSwitch(switches::kTestLauncherFilterFile) &&
671 command_line->HasSwitch(kGTestFilterFlag)) { 670 command_line->HasSwitch(kGTestFilterFlag)) {
(...skipping 424 matching lines...) Expand 10 before | Expand all | Expand 10 after
1096 1095
1097 g_live_processes.Get().erase(process_handle); 1096 g_live_processes.Get().erase(process_handle);
1098 } 1097 }
1099 1098
1100 base::CloseProcessHandle(process_handle); 1099 base::CloseProcessHandle(process_handle);
1101 1100
1102 return exit_code; 1101 return exit_code;
1103 } 1102 }
1104 1103
1105 } // namespace base 1104 } // namespace base
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698