From 1ff50839eeae94bc79052a5d233de6f001b22e15 Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 19:35:06 +0000 Subject: [PATCH 01/25] Namespacing the TryLib files --- TryLib/Autoload.php | 8 --- TryLib/CommandRunner.php | 11 +++- TryLib/JenkinsRunner.php | 7 ++- TryLib/JenkinsRunner/FreeStyleProject.php | 6 +- TryLib/JenkinsRunner/MasterProject.php | 14 +++-- TryLib/Precheck.php | 4 +- TryLib/Precheck/GitCopyAge.php | 8 ++- TryLib/Precheck/GitCopyBehind.php | 6 +- TryLib/Precheck/GitInvalidRepo.php | 9 ++- TryLib/Precheck/GitReportUntracked.php | 6 +- TryLib/Precheck/GitWarnOnBlacklisted.php | 20 ------ TryLib/Precheck/GitWarnOnBlocklisted.php | 6 +- TryLib/Precheck/ScriptRunner.php | 6 +- TryLib/RepoManager.php | 4 +- TryLib/RepoManager/Git.php | 7 ++- TryLib/TryRunner/Builder.php | 31 ++++++---- TryLib/TryRunner/Options.php | 6 +- TryLib/TryRunner/Runner.php | 11 +++- TryLib/Util/AnsiColor.php | 15 +++-- TryLib/Util/OptionsUtil.php | 8 ++- TryLib/Util/PHPOptions/Options.php | 33 +++++----- TryLib/Util/PHPOptions/test.php | 62 ------------------- composer.json | 26 ++++++++ .../JenkinsRunner/FreeStyleProjectTest.php | 9 ++- .../JenkinsRunner/MasterProjectTest.php | 9 ++- tests/phpunit/JenkinsRunnerTest.php | 17 +++-- tests/phpunit/Precheck/GitCopyAgeTest.php | 11 +++- tests/phpunit/Precheck/GitCopyBehindTest.php | 13 ++-- .../Precheck/GitWarnOnBlocklistedTest.php | 19 +++--- tests/phpunit/Precheck/ScriptRunnerTest.php | 15 +++-- tests/phpunit/RepoManager/GitTest.php | 11 +++- tests/phpunit/TryRunner/RunnerTest.php | 23 ++++--- tests/phpunit/Util/OptionsUtilTest.php | 9 ++- try | 18 +++--- 34 files changed, 274 insertions(+), 194 deletions(-) delete mode 100644 TryLib/Autoload.php delete mode 100644 TryLib/Precheck/GitWarnOnBlacklisted.php delete mode 100644 TryLib/Util/PHPOptions/test.php create mode 100644 composer.json diff --git a/TryLib/Autoload.php b/TryLib/Autoload.php deleted file mode 100644 index a871e2a..0000000 --- a/TryLib/Autoload.php +++ /dev/null @@ -1,8 +0,0 @@ -out = ''; try { - $this->colors = new TryLib_Util_AnsiColor(); - } catch (TryLib_Util_DisplayException $e) { + $this->colors = new AnsiColor(); + } catch (DisplayException $e) { $this->colors = false; } } diff --git a/TryLib/JenkinsRunner.php b/TryLib/JenkinsRunner.php index dbb4021..c4bd17b 100644 --- a/TryLib/JenkinsRunner.php +++ b/TryLib/JenkinsRunner.php @@ -1,4 +1,9 @@ excluded_jobs = array(); try { - $this->colors = new TryLib_Util_AnsiColor(); - } catch (TryLib_Util_DisplayException $e) { + $this->colors = new AnsiColor(); + } catch (DisplayException $e) { $this->colors = false; } @@ -105,7 +111,7 @@ public function pollForCompletion($show_progress) { public function processLogOuput($prev_text, $show_progress) { $try_log = $this->getJobOutput(); - $new_text = str_replace($prev_text, '', $try_log); + $new_text = str_replace($prev_text, "", $try_log); $prev_text = $try_log; if ($show_progress) { diff --git a/TryLib/Precheck.php b/TryLib/Precheck.php index 07a9b1d..e82f36e 100644 --- a/TryLib/Precheck.php +++ b/TryLib/Precheck.php @@ -1,5 +1,7 @@ run('git config --get remote.origin.url'); return $cmd_runner->getOutput(); diff --git a/TryLib/Precheck/GitReportUntracked.php b/TryLib/Precheck/GitReportUntracked.php index 186a643..5e65eb2 100755 --- a/TryLib/Precheck/GitReportUntracked.php +++ b/TryLib/Precheck/GitReportUntracked.php @@ -1,9 +1,13 @@ check = new TryLib_Precheck_GitWarnOnBlocklisted($blocklist, $safelist, $staged); - } - - function check($cmd_runner, $repo_path, $upstream) { - $this->check->check($cmd_runner, $repo_path, $upstream); - - } - -} diff --git a/TryLib/Precheck/GitWarnOnBlocklisted.php b/TryLib/Precheck/GitWarnOnBlocklisted.php index b896c1f..092e094 100755 --- a/TryLib/Precheck/GitWarnOnBlocklisted.php +++ b/TryLib/Precheck/GitWarnOnBlocklisted.php @@ -1,9 +1,13 @@ verbose); - $repo_manager = new TryLib_RepoManager_Git($options->wcpath, $cmd_runner); + $cmd_runner = new CommandRunner($options->verbose); + $repo_manager = new Git($options->wcpath, $cmd_runner); if ($this->project_type === self::PROJECT_TYPE_MASTER) { - $jenkins_runner = new TryLib_JenkinsRunner_MasterProject( + $jenkins_runner = new MasterProject( $options->jenkinsserver, $this->jenkins_cli_jar_path, $options->jenkinsjob, @@ -52,7 +61,7 @@ public function build() { $jenkins_runner->setSubJobs($subjobs); } else if ($this->project_type === self::PROJECT_TYPE_FREESTYLE) { - $jenkins_runner = new TryLib_JenkinsRunner_FreeStyleProject( + $jenkins_runner = new FreeStyleProject( $options->jenkinsserver, $this->jenkins_cli_jar_path, $options->jenkinsjob, @@ -63,7 +72,7 @@ public function build() { throw new RuntimeException("Unknown project type"); } - return new TryLib_TryRunner_Runner( + return new Runner( $repo_manager, $jenkins_runner, $this->jenkins_cli_jar_path, @@ -99,7 +108,7 @@ public function overrideUser($override_user) { } /** - * An array of TryLib_Precheck instances to run on your local working copy before sending a job + * An array of TryLib\Precheck instances to run on your local working copy before sending a job * to Jenkins. * * Defaults to an empty array. @@ -110,7 +119,7 @@ public function prechecks(array $prechecks) { } /** - * Command-line options as parsed by TryLib_TryRunner_Options::parse(). + * Command-line options as parsed by TryLib\TryRunner\Options::parse(). */ public function optionsTuple(array $options_tuple) { $this->options_tuple = $options_tuple; diff --git a/TryLib/TryRunner/Options.php b/TryLib/TryRunner/Options.php index 3055e82..1cbb7c4 100644 --- a/TryLib/TryRunner/Options.php +++ b/TryLib/TryRunner/Options.php @@ -1,9 +1,11 @@ parse($argv); } diff --git a/TryLib/TryRunner/Runner.php b/TryLib/TryRunner/Runner.php index 0c8e346..9ed7460 100644 --- a/TryLib/TryRunner/Runner.php +++ b/TryLib/TryRunner/Runner.php @@ -1,15 +1,20 @@ jenkins_runner->setParam('branch', $remote_branch); $this->jenkins_runner->setParam('guid', $this->override_user . time()); - $extra_params = TryLib_Util_OptionsUtil::parseExtraParameters($options->extra_param); + $extra_params = OptionsUtil::parseExtraParameters($options->extra_param); foreach($extra_params as $param) { $this->jenkins_runner->setParam($param[0], $param[1]); } diff --git a/TryLib/Util/AnsiColor.php b/TryLib/Util/AnsiColor.php index 0a773ef..56ae9e4 100644 --- a/TryLib/Util/AnsiColor.php +++ b/TryLib/Util/AnsiColor.php @@ -1,4 +1,11 @@ seq."\033[0m"; - $this->seq = ''; + $this->seq = 'TryLib\Util\PHPOptions\test'; return $seq; } } -class TryLib_Util_DisplayException extends Exception {}; +class DisplayException extends Exception {}; diff --git a/TryLib/Util/OptionsUtil.php b/TryLib/Util/OptionsUtil.php index a72c5a5..97ad388 100644 --- a/TryLib/Util/OptionsUtil.php +++ b/TryLib/Util/OptionsUtil.php @@ -1,6 +1,8 @@ 1) - throw new TryLib_Util_PHPOptions_GetoptError("option --$opt not a unique prefix"); + throw new GetoptError("option --$opt not a unique prefix"); assert('count($possibilities) == 1'); $unique_match = $possibilities[0]; $has_arg = _endswith($unique_match,'='); @@ -227,7 +232,7 @@ function _getopt_do_shorts($opts, $optstring, $shortopts, $args) { if (_getopt_short_has_arg($opt, $shortopts)) { if ($optstring == '') { if (! count($args)) - throw new TryLib_Util_PHPOptions_GetoptError("option -$opt requires argument"); + throw new GetoptError("option -$opt requires argument"); $optstring = $args[0]; array_shift($args); } @@ -247,7 +252,7 @@ function _getopt_short_has_arg($opt, $shortopts) { if ($opt == $shortopts_a[$i] && $opt != ':') return _startswith($shortopts,':',$i+1); } - throw new TryLib_Util_PHPOptions_GetoptError("option -$opt not recognized"); + throw new GetoptError("option -$opt not recognized"); } @@ -256,7 +261,7 @@ function _getopt_short_has_arg($opt, $shortopts) { Keys can be set or accessed with a "no-" or "no_" prefix to negate the value. **/ -class TryLib_Util_PHPOptions_OptDict extends ArrayObject { +class OptDict extends ArrayObject { private $_opts; private $_aliases; @@ -340,7 +345,7 @@ function _tty_width() { By default, the parser function is a tweaked version of getopt(), and the abort behaviour is to exit the program. **/ -class TryLib_Util_PHPOptions_Options { +class Options { public $optspec; public $optfunc; private $_onabort; @@ -351,8 +356,8 @@ class TryLib_Util_PHPOptions_Options { private $_defaults; private $_usagestr; - public function __construct($optspec, $optfunc='_gnu_getopt', - $onabort='_default_onabort') { + public function __construct($optspec, $optfunc='TryLib\Util\PHPOptions\_gnu_getopt', + $onabort='TryLib\Util\PHPOptions\_default_onabort') { $this->optspec = $optspec; $this->_onabort = $onabort; $this->optfunc = $optfunc; @@ -464,7 +469,7 @@ public function fatal($msg) { /**Parse a list of arguments and return (options, flags, extra). - In the returned tuple, "options" is an TryLib_Util_PHPOptions_OptDict with known options, + In the returned tuple, "options" is an OptDict with known options, "flags" is a list of option flags that were used on the command-line, and "extra" is a list of positional arguments. **/ @@ -478,7 +483,7 @@ public function parse($args) { $this->fatal($e->getMessage()); } - $opt = new TryLib_Util_PHPOptions_OptDict($this->_aliases); + $opt = new OptDict($this->_aliases); foreach ($this->_defaults as $k => $v) $opt[$k] = $v; diff --git a/TryLib/Util/PHPOptions/test.php b/TryLib/Util/PHPOptions/test.php deleted file mode 100644 index e0995e0..0000000 --- a/TryLib/Util/PHPOptions/test.php +++ /dev/null @@ -1,62 +0,0 @@ - --- -t,tree output a tree id -c,commit output a commit id - -r,remote= hostname:/path/to/repo of remote repository -n,name= name of backup set to update (if any) -d,date= date for the commit (seconds since the epoch) -v,verbose increase log output (can be used more than once) -q,quiet,no-progress don't show progress meter -smaller= only back up files smaller than n bytes -bwlimit= maximum bytes/sec to transmit to server -f,indexfile= the name of the index file (normally BUP_DIR/bupindex) -strip strips the path to every filename given -strip-path= path-prefix to be stripped when saving -graft= a graft point *old_path*=*new_path* (can be used more than once) -#,compress= set compression level to # (0-9, 9 is highest) [1] -"; - -$o = new TryLib_Util_PHPOptions_Options($s); - -// give it any arbitrary list of arguments, the first one will be ignored -// (program name). -list($opt, $flags, $extra) = $o->parse($argv); - -// Arguments with no trailing '=' give a boolean value (almost.. see below) -if ($opt->c) - print "Committing!\n"; - -// Arguments that are specified in the option spec above with a prefix of 'no-' -// or 'no_' get their boolean value inversed. -// Try using -q to reverse the value of this argument -if ($opt->progress) - print "Showing progress meter\n"; -else - print "NOT showing progress meter\n"; - -// well ... actually, arguments with no trailing '=' can be used multiple times -// and add 1 to the variable each time. (which will stay True as a boolean) -// Try using -v multiple times to see. -echo "verbose level: ", $opt->v, "\n"; - -// Access arguments both by short and long argument names -echo "short arg file name: ", $opt->f, "\n"; -echo "long arg file name: ", $opt->indexfile, "\n"; - -// A short argument of '#' means the program expects an argument like -4 or -8 -echo "-# should be an integer: ", $opt->compress, "\n"; diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..82683e1 --- /dev/null +++ b/composer.json @@ -0,0 +1,26 @@ +{ + "name": "etsy/TryLib", + "description": "Try lib : send your diffs to your CI cluster.", + "license": "MIT", + "keywords": ["try", "etsy", "ci", "continuous integration"], + "authors": [ + { + "name": "Nassim Kammah", + "email": "nkammah@etsy.com" + }, + { + "name": "Laura Beth Lincoln Denker" + } + ], + "require": { + "php": ">=5.3.10" + }, + "require-dev": { + "phpunit/phpunit": ">=5.0.0" + }, + "autoload": { + "psr-4": { + "TryLib\\": "TryLib" + } + } +} diff --git a/tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php b/tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php index e49338c..db3e13d 100644 --- a/tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php +++ b/tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php @@ -1,8 +1,13 @@ mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); - $this->jenkins_runner = new TryLib_JenkinsRunner_FreeStyleProject( + $this->jenkins_runner = new FreeStyleProject( self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, diff --git a/tests/phpunit/JenkinsRunner/MasterProjectTest.php b/tests/phpunit/JenkinsRunner/MasterProjectTest.php index 7616f71..f7056a4 100644 --- a/tests/phpunit/JenkinsRunner/MasterProjectTest.php +++ b/tests/phpunit/JenkinsRunner/MasterProjectTest.php @@ -1,8 +1,13 @@ mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); - $this->jenkins_runner = new TryLib_JenkinsRunner_MasterProject( + $this->jenkins_runner = new MasterProject( self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, diff --git a/tests/phpunit/JenkinsRunnerTest.php b/tests/phpunit/JenkinsRunnerTest.php index 20fd58d..0bfe5b2 100644 --- a/tests/phpunit/JenkinsRunnerTest.php +++ b/tests/phpunit/JenkinsRunnerTest.php @@ -1,10 +1,17 @@ mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); - $this->jenkins_runner = new TestRunner( + $this->jenkins_runner = new static( self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, @@ -46,7 +53,7 @@ function setUp() { * @expectedException */ function testInvalidUrl() { - $this->jenkins_runner = new TestRunner( + $this->jenkins_runner = new static( 'http://totallyvalid.com/', self::JENKINS_CLI, self::JENKINS_JOB, @@ -196,7 +203,7 @@ function provideStartJenkinsJobParam() { /** @dataProvider provideStartJenkinsJobParam */ function testStartJenkinsJob($show_results, $show_progress, $has_callbacks, $expected_call_count) { $jenkins_runner = $this->getMock( - 'TestRunner', + 'tests\phpunit\JenkinsRunnerTest', array('runJenkinsCommand', 'buildCLICommand', 'pollForCompletion', 'getCallbacks', 'executeCallbacks'), array(self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, 'mock_runner') ); diff --git a/tests/phpunit/Precheck/GitCopyAgeTest.php b/tests/phpunit/Precheck/GitCopyAgeTest.php index f2dd0b8..beff593 100644 --- a/tests/phpunit/Precheck/GitCopyAgeTest.php +++ b/tests/phpunit/Precheck/GitCopyAgeTest.php @@ -1,8 +1,13 @@ mock_cmd_runner->expects($this->once()) ->method('run') @@ -34,7 +39,7 @@ function testGetLastFetchDateWithoutRemoteBranchSuccess() { function testGetLastFetchDateWithRemoteBranchFailure() { $last_fetch = 'Sun Feb 10 10:00:00 2013'; - $script_runner = new TryLib_Precheck_GitCopyAge(24, 48, 'branch'); + $script_runner = new GitCopyAge(24, 48, 'branch'); $this->mock_cmd_runner->expects($this->once()) ->method('run') diff --git a/tests/phpunit/Precheck/GitCopyBehindTest.php b/tests/phpunit/Precheck/GitCopyBehindTest.php index f1c504e..81e9f9d 100644 --- a/tests/phpunit/Precheck/GitCopyBehindTest.php +++ b/tests/phpunit/Precheck/GitCopyBehindTest.php @@ -1,8 +1,13 @@ getMock('TryLib_CommandRunner'); @@ -15,7 +20,7 @@ function testShouldRunCheckShouldRun() { ->method('getOutput') ->will($this->returnValue('master')); - $git_copy_behind_check = new TryLib_Precheck_GitCopyBehind(array('master')); + $git_copy_behind_check = new GitCopyBehind(array('master')); $this->assertTrue($git_copy_behind_check->shouldRunCheck($mock_cmd_runner)); } @@ -31,7 +36,7 @@ function testShouldRunCheckShouldNotRun() { ->method('getOutput') ->will($this->returnValue('myfeature')); - $git_copy_behind_check = new TryLib_Precheck_GitCopyBehind(array('master')); + $git_copy_behind_check = new GitCopyBehind(array('master')); $this->assertFalse($git_copy_behind_check->shouldRunCheck($mock_cmd_runner)); } @@ -47,7 +52,7 @@ function testShouldRunCheckNoBranches() { ->method('getOutput') ->will($this->returnValue('master')); - $git_copy_behind_check = new TryLib_Precheck_GitCopyBehind(array()); + $git_copy_behind_check = new GitCopyBehind(array()); $this->assertFalse($git_copy_behind_check->shouldRunCheck($mock_cmd_runner)); } diff --git a/tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php b/tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php index c47b9ec..b93237c 100644 --- a/tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php +++ b/tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php @@ -1,15 +1,20 @@ mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); } function testNoChanges() { - $script_runner = new TryLib_Precheck_GitWarnOnBlocklisted( + $script_runner = new GitWarnOnBlocklisted( array(), null, false @@ -32,7 +37,7 @@ function testNoChanges() { } function testNoBlockListedFiles() { - $script_runner = new TryLib_Precheck_GitWarnOnBlocklisted( + $script_runner = new GitWarnOnBlocklisted( array('my/foo.php'), false, false @@ -55,7 +60,7 @@ function testNoBlockListedFiles() { } function testWithBlockListedFiles() { - $script_runner = new TryLib_Precheck_GitWarnOnBlocklisted( + $script_runner = new GitWarnOnBlocklisted( array('my/foo.php', 'my/bar.php'), null, false @@ -78,7 +83,7 @@ function testWithBlockListedFiles() { } function testWithSafeListedFiles() { - $script_runner = new TryLib_Precheck_GitWarnOnBlocklisted( + $script_runner = new GitWarnOnBlocklisted( array(), array('my/foo.php', 'my/bar.php'), false @@ -101,7 +106,7 @@ function testWithSafeListedFiles() { } function testWithSafeListedAndBlockListedFiles() { - $script_runner = new TryLib_Precheck_GitWarnOnBlocklisted( + $script_runner = new GitWarnOnBlocklisted( array('my/bar.php'), array('my/foo.php', 'my/bar.php'), false @@ -123,7 +128,7 @@ function testWithSafeListedAndBlockListedFiles() { } function testStagedOnly() { - $script_runner = new TryLib_Precheck_GitWarnOnBlocklisted( + $script_runner = new GitWarnOnBlocklisted( array('my/foo.php', 'my/bar.php'), null, true diff --git a/tests/phpunit/Precheck/ScriptRunnerTest.php b/tests/phpunit/Precheck/ScriptRunnerTest.php index 269f8f5..d4cc7e4 100644 --- a/tests/phpunit/Precheck/ScriptRunnerTest.php +++ b/tests/phpunit/Precheck/ScriptRunnerTest.php @@ -1,9 +1,16 @@ mock_cmd_runner->expects($this->never()) ->method('run'); @@ -31,7 +38,7 @@ function testScriptExistsAndSucceeds() { vfsStream::newFile('script') ->at(vfsStreamWrapper::getRoot()); - $script_runner = new TryLib_Precheck_ScriptRunner(vfsStream::url('testDir/script')); + $script_runner = new ScriptRunner(vfsStream::url('testDir/script')); $this->mock_cmd_runner->expects($this->once()) ->method('run') @@ -48,7 +55,7 @@ function testScriptExistsAndFails() { vfsStream::newFile('script') ->at(vfsStreamWrapper::getRoot()); - $script_runner = new TryLib_Precheck_ScriptRunner(vfsStream::url('testDir/script')); + $script_runner = new ScriptRunner(vfsStream::url('testDir/script')); $this->mock_cmd_runner->expects($this->once()) ->method('run') diff --git a/tests/phpunit/RepoManager/GitTest.php b/tests/phpunit/RepoManager/GitTest.php index aabfa5e..87b3a1a 100644 --- a/tests/phpunit/RepoManager/GitTest.php +++ b/tests/phpunit/RepoManager/GitTest.php @@ -1,8 +1,13 @@ mock_cmd_runner ); @@ -100,7 +105,7 @@ function testParseLocalBranchSuccess() { } function testParseLocalBranchFailure() { - $repo_manager = new TryLib_RepoManager_Git( + $repo_manager = new Git( self::REPO_PATH, $this->mock_cmd_runner ); diff --git a/tests/phpunit/TryRunner/RunnerTest.php b/tests/phpunit/TryRunner/RunnerTest.php index 2a3b9aa..6810034 100644 --- a/tests/phpunit/TryRunner/RunnerTest.php +++ b/tests/phpunit/TryRunner/RunnerTest.php @@ -1,5 +1,14 @@ assertEquals($expected_params, $actual_params); } } diff --git a/try b/try index 7ffd61e..1355b1b 100755 --- a/try +++ b/try @@ -1,7 +1,7 @@ #!/usr/bin/php parse($argv); # [Jenkins MasterProject only] - Get the subjobs list $subjobs = array_slice($extra, 1); -$cmd_runner = new TryLib_CommandRunner($options->verbose); +$cmd_runner = new TryLib\CommandRunner($options->verbose); -$repo_manager = new TryLib_RepoManager_Git($options->wcpath, $cmd_runner); +$repo_manager = new TryLib\RepoManager\Git($options->wcpath, $cmd_runner); $remote_branch = $options->branch; $repo_manager->setRemoteBranch($remote_branch); # [Jenkins Freestyle project] -#$jenkins_runner = new TryLib_JenkinsRunner_FreeStyleProject( +#$jenkins_runner = new TryLib\JenkinsRunner\FreeStyleProject( # $options->jenkinsserver, # $jenkins_cli_jar, # $options->jenkinsjob, @@ -73,7 +73,7 @@ $repo_manager->setRemoteBranch($remote_branch); #); # [Jenkins MasterProject only] -$jenkins_runner = new TryLib_JenkinsRunner_MasterProject( +$jenkins_runner = new TryLib\JenkinsRunner\MasterProject( $options->jenkinsserver, $jenkins_cli_jar, $options->jenkinsjob, @@ -87,8 +87,8 @@ if (is_string($safelist)) { } $pre_checks = array( - new TryLib_Precheck_GitCopyBehind(array('master')), - new TryLib_Precheck_GitReportUntracked(), + new TryLib\Precheck\GitCopyBehind(array('master')), + new TryLib\Precheck\GitReportUntracked(), ); $repo_manager->runPrechecks($pre_checks); @@ -108,7 +108,7 @@ $jenkins_runner->setSshKey( getenv('HOME') . '/.ssh/try_id_rsa'); $jenkins_runner->setParam('branch', $remote_branch); $jenkins_runner->setParam('guid', $user . time()); -$extra_params = TryLib_Util_OptionsUtil::parseExtraParameters($options->extra_param); +$extra_params = TryLib\Util\OptionsUtil::parseExtraParameters($options->extra_param); foreach($extra_params as $param) { $jenkins_runner->setParam($param[0], $param[1]); } From e7d8ec810dd3037f51117825baff5b91b51fcecb Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 20:11:07 +0000 Subject: [PATCH 02/25] Adding gitignore file --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7579f74 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +vendor +composer.lock From 99bba8faf691710acbef638800b322564454cdda Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 20:48:56 +0000 Subject: [PATCH 03/25] updating phpunit version and starting to fix tests --- composer.json | 4 ++-- phpunit.xml | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 phpunit.xml diff --git a/composer.json b/composer.json index 82683e1..5e98dd8 100644 --- a/composer.json +++ b/composer.json @@ -16,11 +16,11 @@ "php": ">=5.3.10" }, "require-dev": { - "phpunit/phpunit": ">=5.0.0" + "phpunit/phpunit": ">=6.0.0" }, "autoload": { "psr-4": { - "TryLib\\": "TryLib" + "TryLib\\": "TryLib/" } } } diff --git a/phpunit.xml b/phpunit.xml new file mode 100644 index 0000000..e7ddb0e --- /dev/null +++ b/phpunit.xml @@ -0,0 +1,18 @@ + + + + + + ./tests/phpunit/JenkinsRunner/MasterProjectTest.php + + + From ba60b70f233ea801c23785d33c8d5e9448181e7c Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 20:49:18 +0000 Subject: [PATCH 04/25] Updating MasterProjectTest --- .../JenkinsRunner/MasterProjectTest.php | 100 ++++++++---------- 1 file changed, 44 insertions(+), 56 deletions(-) diff --git a/tests/phpunit/JenkinsRunner/MasterProjectTest.php b/tests/phpunit/JenkinsRunner/MasterProjectTest.php index f7056a4..2b43de8 100644 --- a/tests/phpunit/JenkinsRunner/MasterProjectTest.php +++ b/tests/phpunit/JenkinsRunner/MasterProjectTest.php @@ -2,12 +2,9 @@ namespace tests\phpunit\JenkinsRunner; -use PHPUnit_Framework_TestCase as TestCase; -use TryLib_JenkinsRunner_MasterProject as MasterProject; +use TryLib\JenkinsRunner\MasterProject as MasterProject; -require_once "TryLib/Autoload.php"; - -class MasterProjectTest extends TestCase { +class MasterProjectTest extends \PHPUnit\Framework\TestCase { const JENKINS_URL = 'http://url.to.jenkins.com:8080/'; const JENKINS_CLI = '/path/to/cli.jar'; const JENKINS_JOB = 'test-try'; @@ -18,7 +15,8 @@ class MasterProjectTest extends TestCase { function setUp() { parent::setUp(); - $this->mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); + $this->mock_cmd_runner = $this->getMockBuilder('TryLib\CommandRunner') + ->getMock(); $this->jenkins_runner = new MasterProject( self::JENKINS_URL, @@ -96,11 +94,10 @@ function provideShowProgressJobResultsData() { /** @dataProvider provideShowProgressJobResultsData */ function testPrintJobResultSuccessAndShowProgress($log_line, $status, $expected_output) { - $jenkins_runner = $this->getMock( - 'TryLib_JenkinsRunner_MasterProject', - array('colorStatus'), - array(self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner) - ); + $jenkins_runner = $this->getMockBuilder('TryLib\JenkinsRunner\MasterProject') + ->setMethods(['colorStatus']) + ->setConstructorArgs([self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner]) + ->getMock(); $jenkins_runner->expects($this->once()) ->method('colorStatus') @@ -119,11 +116,10 @@ function testPrintJobResultSuccessAndShowProgress($log_line, $status, $expected_ } function testPrintJobResultNoMatch() { - $jenkins_runner = $this->getMock( - 'TryLib_JenkinsRunner_MasterProject', - array('colorStatus'), - array(self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner) - ); + $jenkins_runner = $this->getMockBuilder('TryLib\JenkinsRunner\MasterProject') + ->setMethods(['colorStatus']) + ->setConstructorArgs([self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner]) + ->getMock(); $jenkins_runner->expects($this->never()) ->method('colorStatus') @@ -146,11 +142,10 @@ function testProcessLogOutputNotFinishedShowProgress() { $new_text = $prev_text . PHP_EOL . '......... try-file-tests (pending)'; - $jenkins_runner = $this->getMock( - 'TryLib_JenkinsRunner_MasterProject', - array('getJobOutput', 'printJobResults'), - array(self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner) - ); + $jenkins_runner = $this->getMockBuilder('TryLib\JenkinsRunner\MasterProject') + ->setMethods(['getJobOutput', 'printJobResults']) + ->setConstructorArgs([self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner]) + ->getMock(); $jenkins_runner->expects($this->at(0)) ->method('getJobOutput') @@ -178,11 +173,10 @@ function testProcessLogOutputNotFinishedDoNotShowProgress() { $new_text = $prev_text . PHP_EOL . '......... try-file-tests (pending)'; - $jenkins_runner = $this->getMock( - 'TryLib_JenkinsRunner_MasterProject', - array('getJobOutput', 'printJobResults'), - array(self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner) - ); + $jenkins_runner = $this->getMockBuilder('TryLib\JenkinsRunner\MasterProject') + ->setMethods(['getJobOutput', 'printJobResults']) + ->setConstructorArgs([self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner]) + ->getMock(); $jenkins_runner->expects($this->once()) ->method('getJobOutput') @@ -210,11 +204,10 @@ function testProcessLogOutputFinishedShowProgress() { $new_text = $prev_text . PHP_EOL . 'Finished: FAILURE'; - $jenkins_runner = $this->getMock( - 'TryLib_JenkinsRunner_MasterProject', - array('getJobOutput', 'printJobResults', 'colorStatus'), - array(self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner) - ); + $jenkins_runner = $this->getMockBuilder('TryLib\JenkinsRunner\MasterProject') + ->setMethods(['getJobOutput', 'printJobResults', 'colorStatus']) + ->setConstructorArgs([self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner]) + ->getMock(); $jenkins_runner->expects($this->once()) ->method('getJobOutput') @@ -250,11 +243,10 @@ function testProcessLogOutputFinishedDoNotShowProgress() { $new_text = $prev_text . PHP_EOL . 'Finished: SUCCESS'; - $jenkins_runner = $this->getMock( - 'TryLib_JenkinsRunner_MasterProject', - array('getJobOutput', 'printJobResults', 'colorStatus'), - array(self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner) - ); + $jenkins_runner = $this->getMockBuilder('TryLib\JenkinsRunner\MasterProject') + ->setMethods(['getJobOutput', 'printJobResults', 'colorStatus']) + ->setConstructorArgs([self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner]) + ->getMock(); $jenkins_runner->expects($this->once()) ->method('getJobOutput') @@ -289,11 +281,10 @@ function testProcessLogOutputDifferentPrefixFinishedDoNotShowProgress() { $new_text = $prev_text . PHP_EOL . 'Finished: SUCCESS'; - $jenkins_runner = $this->getMock( - 'TryLib_JenkinsRunner_MasterProject', - array('getJobOutput', 'printJobResults', 'colorStatus'), - array(self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB . '-foo', $this->mock_cmd_runner, 'bar') - ); + $jenkins_runner = $this->getMockBuilder('TryLib\JenkinsRunner\MasterProject') + ->setMethods(['getJobOutput', 'printJobResults', 'colorStatus']) + ->setConstructorArgs([self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner]) + ->getMock(); $jenkins_runner->expects($this->once()) ->method('getJobOutput') @@ -326,11 +317,10 @@ function testPollForCompletionJobUrlNotFound() { ->method('terminate') ->with('Could not find ' .self::JENKINS_JOB . ' URL' . PHP_EOL); - $jenkins_runner = $this->getMock( - 'TryLib_JenkinsRunner_MasterProject', - array('processLogOuput'), - array(self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner) - ); + $jenkins_runner = $this->getMockBuilder('TryLib\JenkinsRunner\MasterProject') + ->setMethods(['processLogOuput']) + ->setConstructorArgs([self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner]) + ->getMock(); $jenkins_runner->pollForCompletion(true); @@ -344,11 +334,10 @@ function testPollForCompletionJobFinished() { ->will($this->returnValue($expected_job_url)); - $jenkins_runner = $this->getMock( - 'TryLib_JenkinsRunner_MasterProject', - array('processLogOuput'), - array(self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner) - ); + $jenkins_runner = $this->getMockBuilder('TryLib\JenkinsRunner\MasterProject') + ->setMethods(['processLogOuput']) + ->setConstructorArgs([self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner]) + ->getMock(); $jenkins_runner->expects($this->once()) ->method('processLogOuput') @@ -367,11 +356,10 @@ function testPollForCompletionJobPollsAndFinishes() { ->will($this->returnValue($expected_job_url)); - $jenkins_runner = $this->getMock( - 'TryLib_JenkinsRunner_MasterProject', - array('processLogOuput'), - array(self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner, null, 0) - ); + $jenkins_runner = $this->getMockBuilder('TryLib\JenkinsRunner\MasterProject') + ->setMethods(['processLogOuput']) + ->setConstructorArgs([self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner, null, 0]) + ->getMock(); $jenkins_runner->expects($this->at(0)) ->method('processLogOuput') From d2561b9ef663f6254ee3757b185fa7894d82b4fe Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 20:52:05 +0000 Subject: [PATCH 05/25] fixing up FressStyleProjectTest --- phpunit.xml | 1 + tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php | 10 ++++------ 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/phpunit.xml b/phpunit.xml index e7ddb0e..5f5af87 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -13,6 +13,7 @@ ./tests/phpunit/JenkinsRunner/MasterProjectTest.php + ./tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php diff --git a/tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php b/tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php index db3e13d..a47c25d 100644 --- a/tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php +++ b/tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php @@ -2,12 +2,9 @@ namespace tests\phpunit\JenkinsRunner; -use PHPUnit_Framework_TestCase as TestCase; -use TryLib_JenkinsRunner_FreeStyleProject as FreeStyleProject; +use TryLib\JenkinsRunner\FreeStyleProject as FreeStyleProject; -require_once "TryLib/Autoload.php"; - -class FreeStyleProjectTest extends TestCase { +class FreeStyleProjectTest extends \PHPUnit\Framework\TestCase { const JENKINS_URL = 'http://url.to.jenkins.com:8080/'; const JENKINS_CLI = '/path/to/cli.jar'; const JENKINS_JOB = 'test-try'; @@ -18,7 +15,8 @@ class FreeStyleProjectTest extends TestCase { function setUp() { parent::setUp(); - $this->mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); + $this->mock_cmd_runner = $this->getMockBuilder('TryLib\CommandRunner') + ->getMock(); $this->jenkins_runner = new FreeStyleProject( self::JENKINS_URL, From 35dced196a57984738f66bbfdc745dc1ab6dd46d Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:14:18 +0000 Subject: [PATCH 06/25] Fixing JenkinsRunnerTest --- composer.json | 3 ++- phpunit.xml | 1 + tests/phpunit/JenkinsRunnerTest.php | 35 +++++++++++++---------------- 3 files changed, 18 insertions(+), 21 deletions(-) diff --git a/composer.json b/composer.json index 5e98dd8..6fcc410 100644 --- a/composer.json +++ b/composer.json @@ -16,7 +16,8 @@ "php": ">=5.3.10" }, "require-dev": { - "phpunit/phpunit": ">=6.0.0" + "phpunit/phpunit": ">=6.0.0", + "mikey179/vfsStream": "~1" }, "autoload": { "psr-4": { diff --git a/phpunit.xml b/phpunit.xml index 5f5af87..51ee52e 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -14,6 +14,7 @@ ./tests/phpunit/JenkinsRunner/MasterProjectTest.php ./tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php + ./tests/phpunit/JenkinsRunnerTest.php diff --git a/tests/phpunit/JenkinsRunnerTest.php b/tests/phpunit/JenkinsRunnerTest.php index 0bfe5b2..aedccda 100644 --- a/tests/phpunit/JenkinsRunnerTest.php +++ b/tests/phpunit/JenkinsRunnerTest.php @@ -2,16 +2,11 @@ namespace tests\phpunit; -use TryLib_JenkinsRunner as JenkinsRunner; -use PHPUnit_Framework_TestCase as TestCase; -use vfsStream; -use vfsStreamWrapper; +use TryLib\JenkinsRunner as JenkinsRunner; +use org\bovigo\vfs\vfsStream, + org\bovigo\vfs\vfsStreamWrapper; -require_once "TryLib/Autoload.php"; -require_once 'vfsStream/vfsStream.php'; - - -class JenkinsRunnerTest extends JenkinsRunner{ +class TestRunner extends JenkinsRunner{ public function getBuildCommand() { return 'test'; @@ -26,7 +21,7 @@ public function pollForCompletion($pretty) { } } -class JenkinsRunnerTest extends TestCase { +class JenkinsRunnerTest extends \PHPUnit\Framework\TestCase { const JENKINS_URL = 'https://url.to.jenkins.com:8080/'; const JENKINS_CLI = '/path/to/cli.jar'; const JENKINS_JOB = 'test-try'; @@ -37,9 +32,10 @@ class JenkinsRunnerTest extends TestCase { function setUp() { parent::setUp(); - $this->mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); + $this->mock_cmd_runner = $this->getMockBuilder('TryLib\CommandRunner') + ->getMock(); - $this->jenkins_runner = new static( + $this->jenkins_runner = new TestRunner( self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, @@ -50,11 +46,11 @@ function setUp() { } /** - * @expectedException + * @expectedException Exception */ function testInvalidUrl() { - $this->jenkins_runner = new static( - 'http://totallyvalid.com/', + $this->jenkins_runner = new TestRunner( + 'totallyvalid.com/', self::JENKINS_CLI, self::JENKINS_JOB, $this->mock_cmd_runner @@ -202,11 +198,10 @@ function provideStartJenkinsJobParam() { /** @dataProvider provideStartJenkinsJobParam */ function testStartJenkinsJob($show_results, $show_progress, $has_callbacks, $expected_call_count) { - $jenkins_runner = $this->getMock( - 'tests\phpunit\JenkinsRunnerTest', - array('runJenkinsCommand', 'buildCLICommand', 'pollForCompletion', 'getCallbacks', 'executeCallbacks'), - array(self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, 'mock_runner') - ); + $jenkins_runner = $this->getMockBuilder('tests\phpunit\TestRunner') + ->setMethods(['runJenkinsCommand', 'buildCLICommand', 'pollForCompletion', 'getCallbacks', 'executeCallbacks']) + ->setConstructorArgs([self::JENKINS_URL, self::JENKINS_CLI, self::JENKINS_JOB, 'mock_runner']) + ->getMock(); $jenkins_runner->expects($this->at(0)) ->method('buildCLICommand') From 9f71bb6c5b77fd13ea0de29bb673e5108c4ad295 Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:20:52 +0000 Subject: [PATCH 07/25] Fixing GitCopyAgeTest --- phpunit.xml | 1 + tests/phpunit/Precheck/GitCopyAgeTest.php | 39 ++++++++++------------- 2 files changed, 18 insertions(+), 22 deletions(-) diff --git a/phpunit.xml b/phpunit.xml index 51ee52e..68e9074 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -15,6 +15,7 @@ ./tests/phpunit/JenkinsRunner/MasterProjectTest.php ./tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php ./tests/phpunit/JenkinsRunnerTest.php + ./tests/phpunit/Precheck/GitCopyAgeTest.php diff --git a/tests/phpunit/Precheck/GitCopyAgeTest.php b/tests/phpunit/Precheck/GitCopyAgeTest.php index beff593..b84d4da 100644 --- a/tests/phpunit/Precheck/GitCopyAgeTest.php +++ b/tests/phpunit/Precheck/GitCopyAgeTest.php @@ -2,18 +2,16 @@ namespace tests\phpunit\Precheck; -use PHPUnit_Framework_TestCase as TestCase; -use TryLib_Precheck_GitCopyAge as GitCopyAge; +use TryLib\Precheck\GitCopyAge as GitCopyAge; -require_once "TryLib/Autoload.php"; - -class GitCopyAgeTest extends TestCase { +class GitCopyAgeTest extends \PHPUnit\Framework\TestCase { private $mock_cmd_runner; function setUp() { parent::setUp(); - $this->mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); + $this->mock_cmd_runner = $this->getMockBuilder('TryLib\CommandRunner') + ->getMock(); } function testGetLastFetchDateWithoutRemoteBranchSuccess() { @@ -56,11 +54,10 @@ function testGetLastFetchDateWithRemoteBranchFailure() { function testWorkingCopyPastMaxBlockingAge() { $last_fetch = 'Sun Feb 10 10:00:00 2013'; - $script_runner = $this->getMock( - 'TryLib_Precheck_GitCopyAge', - array('getLastFetchDate', 'getTimeDelta', 'formatTimeDiff'), - array(12, 72, 'branch') - ); + $script_runner = $this->getMockBuilder('TryLib\Precheck\GitCopyAge') + ->setMethods(['getLastFetchDate', 'getTimeDelta', 'formatTimeDiff']) + ->setConstructorArgs([12, 72, 'branch']) + ->getMock(); $script_runner->expects($this->once()) ->method('getLastFetchDate') @@ -87,12 +84,11 @@ function testWorkingCopyPastMaxBlockingAge() { function testWorkingCopyPastMaxWarningAge() { $last_fetch = 'Sun Feb 10 10:00:00 2013'; - $script_runner = $this->getMock( - 'TryLib_Precheck_GitCopyAge', - array('getLastFetchDate', 'getTimeDelta', 'formatTimeDiff'), - array(12, 72, 'branch') - ); - + $script_runner = $this->getMockBuilder('TryLib\Precheck\GitCopyAge') + ->setMethods(['getLastFetchDate', 'getTimeDelta', 'formatTimeDiff']) + ->setConstructorArgs([12, 72, 'branch']) + ->getMock(); + $script_runner->expects($this->once()) ->method('getLastFetchDate') ->with($this->mock_cmd_runner) @@ -121,11 +117,10 @@ function testWorkingCopyPastMaxWarningAge() { function testWorkingCopySuccess() { $last_fetch = 'Sun Feb 10 10:00:00 2013'; - $script_runner = $this->getMock( - 'TryLib_Precheck_GitCopyAge', - array('getLastFetchDate', 'getTimeDelta', 'formatTimeDiff'), - array(12, 72, 'branch') - ); + $script_runner = $this->getMockBuilder('TryLib\Precheck\GitCopyAge') + ->setMethods(['getLastFetchDate', 'getTimeDelta', 'formatTimeDiff']) + ->setConstructorArgs([12, 72, 'branch']) + ->getMock(); $script_runner->expects($this->once()) ->method('getLastFetchDate') From 034549c9d140d1a84095342c51c62d0c9b811ed7 Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:28:32 +0000 Subject: [PATCH 08/25] fix GitCopyBehindTest --- phpunit.xml | 1 + tests/phpunit/Precheck/GitCopyBehindTest.php | 52 ++++++++++---------- 2 files changed, 27 insertions(+), 26 deletions(-) diff --git a/phpunit.xml b/phpunit.xml index 68e9074..6c3dc7c 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -16,6 +16,7 @@ ./tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php ./tests/phpunit/JenkinsRunnerTest.php ./tests/phpunit/Precheck/GitCopyAgeTest.php + ./tests/phpunit/Precheck/GitCopyBehindTest.php diff --git a/tests/phpunit/Precheck/GitCopyBehindTest.php b/tests/phpunit/Precheck/GitCopyBehindTest.php index 81e9f9d..bc44f72 100644 --- a/tests/phpunit/Precheck/GitCopyBehindTest.php +++ b/tests/phpunit/Precheck/GitCopyBehindTest.php @@ -2,15 +2,13 @@ namespace tests\phpunit\Precheck; -use PHPUnit_Framework_TestCase as TestCase; -use TryLib_Precheck_GitCopyBehind as GitCopyBehind; +use TryLib\Precheck\GitCopyBehind as GitCopyBehind; -require_once "TryLib/Autoload.php"; - -class GitCopyBehindTest extends TestCase { +class GitCopyBehindTest extends \PHPUnit\Framework\TestCase { function testShouldRunCheckShouldRun() { - $mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); + $mock_cmd_runner = $this->getMockBuilder('TryLib\CommandRunner') + ->getMock(); $mock_cmd_runner->expects($this->once()) ->method('run') @@ -26,7 +24,8 @@ function testShouldRunCheckShouldRun() { } function testShouldRunCheckShouldNotRun() { - $mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); + $mock_cmd_runner = $this->getMockBuilder('TryLib\CommandRunner') + ->getMock(); $mock_cmd_runner->expects($this->once()) ->method('run') @@ -42,7 +41,8 @@ function testShouldRunCheckShouldNotRun() { } function testShouldRunCheckNoBranches() { - $mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); + $mock_cmd_runner = $this->getMockBuilder('TryLib\CommandRunner') + ->getMock(); $mock_cmd_runner->expects($this->once()) ->method('run') @@ -58,7 +58,8 @@ function testShouldRunCheckNoBranches() { } function testCheckWorkingCopyBehind() { - $mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); + $mock_cmd_runner = $this->getMockBuilder('TryLib\CommandRunner') + ->getMock(); $mock_cmd_runner->expects($this->once()) ->method('run') @@ -71,11 +72,10 @@ function testCheckWorkingCopyBehind() { $mock_cmd_runner->expects($this->once()) ->method('warn'); - $script_runner = $this->getMock( - 'TryLib_Precheck_GitCopyBehind', - array('shouldRunCheck'), - array(array('master')) - ); + $script_runner = $this->getMockBuilder('TryLib\Precheck\GitCopyBehind') + ->setMethods(['shouldRunCheck']) + ->setConstructorArgs([['master']]) + ->getMock(); $script_runner->expects($this->once()) ->method('shouldRunCheck') @@ -86,7 +86,8 @@ function testCheckWorkingCopyBehind() { } function testCheckWorkingCopyNotBehind() { - $mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); + $mock_cmd_runner = $this->getMockBuilder('TryLib\CommandRunner') + ->getMock(); $mock_cmd_runner->expects($this->once()) ->method('run') @@ -99,11 +100,10 @@ function testCheckWorkingCopyNotBehind() { $mock_cmd_runner->expects($this->never()) ->method('warn'); - $script_runner = $this->getMock( - 'TryLib_Precheck_GitCopyBehind', - array('shouldRunCheck'), - array(array('master')) - ); + $script_runner = $this->getMockBuilder('TryLib\Precheck\GitCopyBehind') + ->setMethods(['shouldRunCheck']) + ->setConstructorArgs([['master']]) + ->getMock(); $script_runner->expects($this->once()) ->method('shouldRunCheck') @@ -114,7 +114,8 @@ function testCheckWorkingCopyNotBehind() { } function testCheckShouldNotRun() { - $mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); + $mock_cmd_runner = $this->getMockBuilder('TryLib\CommandRunner') + ->getMock(); $mock_cmd_runner->expects($this->never()) ->method('run'); @@ -125,11 +126,10 @@ function testCheckShouldNotRun() { $mock_cmd_runner->expects($this->never()) ->method('warn'); - $script_runner = $this->getMock( - 'TryLib_Precheck_GitCopyBehind', - array('shouldRunCheck'), - array(array('master')) - ); + $script_runner = $this->getMockBuilder('TryLib\Precheck\GitCopyBehind') + ->setMethods(['shouldRunCheck']) + ->setConstructorArgs([['master']]) + ->getMock(); $script_runner->expects($this->once()) ->method('shouldRunCheck') From 396ab4de18498a43da40cefb5dbb715dca55ff93 Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:30:20 +0000 Subject: [PATCH 09/25] fix GitWarnOnBlockListed --- phpunit.xml | 1 + tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php | 10 ++++------ 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/phpunit.xml b/phpunit.xml index 6c3dc7c..b195b34 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -17,6 +17,7 @@ ./tests/phpunit/JenkinsRunnerTest.php ./tests/phpunit/Precheck/GitCopyAgeTest.php ./tests/phpunit/Precheck/GitCopyBehindTest.php + ./tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php diff --git a/tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php b/tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php index b93237c..6e4057b 100644 --- a/tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php +++ b/tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php @@ -2,15 +2,13 @@ namespace tests\phpunit\Precheck; -use PHPUnit_Framework_TestCase as TestCase; -use TryLib_Precheck_GitWarnOnBlocklisted as GitWarnOnBlocklisted; +use TryLib\Precheck\GitWarnOnBlocklisted as GitWarnOnBlocklisted; -require_once "TryLib/Autoload.php"; - -class GitWarnOnBlocklistedTest extends TestCase { +class GitWarnOnBlocklistedTest extends \PHPUnit\Framework\TestCase { function setUp() { parent::setUp(); - $this->mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); + $this->mock_cmd_runner = $this->getMockBuilder('TryLib\CommandRunner') + ->getMock(); } function testNoChanges() { From a8713e157998baa4179af94e09a31230d1dbda4f Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:32:45 +0000 Subject: [PATCH 10/25] fix ScriptRunnerTest --- phpunit.xml | 1 + tests/phpunit/Precheck/ScriptRunnerTest.php | 15 ++++++--------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/phpunit.xml b/phpunit.xml index b195b34..133ab27 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -18,6 +18,7 @@ ./tests/phpunit/Precheck/GitCopyAgeTest.php ./tests/phpunit/Precheck/GitCopyBehindTest.php ./tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php + ./tests/phpunit/Precheck/ScriptRunnerTest.php diff --git a/tests/phpunit/Precheck/ScriptRunnerTest.php b/tests/phpunit/Precheck/ScriptRunnerTest.php index d4cc7e4..cd72dff 100644 --- a/tests/phpunit/Precheck/ScriptRunnerTest.php +++ b/tests/phpunit/Precheck/ScriptRunnerTest.php @@ -2,21 +2,18 @@ namespace tests\phpunit\Precheck; -use PHPUnit_Framework_TestCase as TestCase; -use vfsStream; -use TryLib_Precheck_ScriptRunner as ScriptRunner; -use vfsStreamWrapper; +use TryLib\Precheck\ScriptRunner as ScriptRunner; +use org\bovigo\vfs\vfsStream, + org\bovigo\vfs\vfsStreamWrapper; -require_once "TryLib/Autoload.php"; -require_once 'vfsStream/vfsStream.php'; - -class ScriptRunnerTest extends TestCase { +class ScriptRunnerTest extends \PHPUnit\Framework\TestCase { private $mock_cmd_runner; function setUp() { parent::setUp(); - $this->mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); + $this->mock_cmd_runner = $this->getMockBuilder('TryLib\CommandRunner') + ->getMock(); vfsStream::setup('testDir'); } From 7f2147cd2fad74642578d1ab2a5827d3e49ea498 Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:39:38 +0000 Subject: [PATCH 11/25] fixing up GitTest --- phpunit.xml | 1 + tests/phpunit/RepoManager/GitTest.php | 94 ++++++++++++--------------- 2 files changed, 44 insertions(+), 51 deletions(-) diff --git a/phpunit.xml b/phpunit.xml index 133ab27..ec23464 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -19,6 +19,7 @@ ./tests/phpunit/Precheck/GitCopyBehindTest.php ./tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php ./tests/phpunit/Precheck/ScriptRunnerTest.php + ./tests/phpunit/RepoManager/GitTest.php diff --git a/tests/phpunit/RepoManager/GitTest.php b/tests/phpunit/RepoManager/GitTest.php index 87b3a1a..e7a0674 100644 --- a/tests/phpunit/RepoManager/GitTest.php +++ b/tests/phpunit/RepoManager/GitTest.php @@ -2,12 +2,9 @@ namespace tests\phpunit\RepoManager; -use PHPUnit_Framework_TestCase as TestCase; -use TryLib_RepoManager_Git as Git; +use TryLib\RepoManager\Git as Git; -require_once "TryLib/Autoload.php"; - -class GitTest extends TestCase { +class GitTest extends \PHPUnit\Framework\TestCase { const REPO_PATH = '/path/to/repo'; private $mock_cmd_runner; @@ -15,15 +12,15 @@ class GitTest extends TestCase { function setUp() { parent::setUp(); - $this->mock_cmd_runner = $this->getMock('TryLib_CommandRunner'); + $this->mock_cmd_runner = $this->getMockBuilder('TryLib\CommandRunner') + ->getMock(); } function testGenerateDiffStagedSuccessfull() { - $repo_manager = $this->getMock( - 'TryLib_RepoManager_Git', - array('getUpstream'), - array(self::REPO_PATH, $this->mock_cmd_runner) - ); + $repo_manager = $this->getMockBuilder('TryLib\RepoManager\Git') + ->setMethods(['getUpstream']) + ->setConstructorArgs([self::REPO_PATH, $this->mock_cmd_runner]) + ->getMock(); $repo_manager->expects($this->once()) ->method('getUpstream') @@ -52,11 +49,10 @@ function testGenerateDiffStagedSuccessfull() { } function testGenerateDiffFailure() { - $repo_manager = $this->getMock( - 'TryLib_RepoManager_Git', - array('getUpstream'), - array(self::REPO_PATH, $this->mock_cmd_runner) - ); + $repo_manager = $this->getMockBuilder('TryLib\RepoManager\Git') + ->setMethods(['getUpstream']) + ->setConstructorArgs([self::REPO_PATH, $this->mock_cmd_runner]) + ->getMock(); $repo_manager->expects($this->once()) ->method('getUpstream') @@ -126,12 +122,11 @@ function testParseLocalBranchFailure() { } function testGetRemoteSuccess() { - $repo_manager = $this->getMock( - 'TryLib_RepoManager_Git', - array('getLocalBranch', 'getConfig'), - array(self::REPO_PATH, $this->mock_cmd_runner) - ); - + $repo_manager = $this->getMockBuilder('TryLib\RepoManager\Git') + ->setMethods(['getLocalBranch', 'getConfig']) + ->setConstructorArgs([self::REPO_PATH, $this->mock_cmd_runner]) + ->getMock(); + $repo_manager->expects($this->once()) ->method('getLocalBranch') ->will($this->returnValue('master')); @@ -145,11 +140,10 @@ function testGetRemoteSuccess() { } function testGetRemoteFailWithDefault() { - $repo_manager = $this->getMock( - 'TryLib_RepoManager_Git', - array('getLocalBranch', 'getConfig'), - array(self::REPO_PATH, $this->mock_cmd_runner) - ); + $repo_manager = $this->getMockBuilder('TryLib\RepoManager\Git') + ->setMethods(['getLocalBranch', 'getConfig']) + ->setConstructorArgs([self::REPO_PATH, $this->mock_cmd_runner]) + ->getMock(); $repo_manager->expects($this->once()) ->method('getLocalBranch') @@ -164,12 +158,11 @@ function testGetRemoteFailWithDefault() { } function testGetRemoteFailNoDefault() { - $repo_manager = $this->getMock( - 'TryLib_RepoManager_Git', - array('getLocalBranch', 'getConfig'), - array(self::REPO_PATH, $this->mock_cmd_runner) - ); - + $repo_manager = $this->getMockBuilder('TryLib\RepoManager\Git') + ->setMethods(['getLocalBranch', 'getConfig']) + ->setConstructorArgs([self::REPO_PATH, $this->mock_cmd_runner]) + ->getMock(); + $repo_manager->expects($this->once()) ->method('getLocalBranch') ->will($this->returnValue('master')); @@ -184,11 +177,10 @@ function testGetRemoteFailNoDefault() { function testGetRemoteBranchFromTrackingConfig() { - $repo_manager = $this->getMock( - 'TryLib_RepoManager_Git', - array('getLocalBranch', 'getConfig'), - array(self::REPO_PATH, $this->mock_cmd_runner) - ); + $repo_manager = $this->getMockBuilder('TryLib\RepoManager\Git') + ->setMethods(['getLocalBranch', 'getConfig']) + ->setConstructorArgs([self::REPO_PATH, $this->mock_cmd_runner]) + ->getMock(); $repo_manager->expects($this->once()) ->method('getLocalBranch') @@ -203,11 +195,10 @@ function testGetRemoteBranchFromTrackingConfig() { } function testGetRemoteBranchNoTrackingRemoteWithSameName() { - $repo_manager = $this->getMock( - 'TryLib_RepoManager_Git', - array('getLocalBranch', 'getConfig'), - array(self::REPO_PATH, $this->mock_cmd_runner) - ); + $repo_manager = $this->getMockBuilder('TryLib\RepoManager\Git') + ->setMethods(['getLocalBranch', 'getConfig']) + ->setConstructorArgs([self::REPO_PATH, $this->mock_cmd_runner]) + ->getMock(); $repo_manager->expects($this->at(0)) ->method('getLocalBranch') @@ -232,15 +223,16 @@ function testGetRemoteBranchNoTrackingRemoteWithSameName() { $this->assertEquals('local_branch', $repo_manager->getRemoteBranch()); } - - function testGetRemoteBranchNoTrackingNoRemote() { - $this->setExpectedException('RuntimeException', 'No remote branch was found'); - $repo_manager = $this->getMock( - 'TryLib_RepoManager_Git', - array('getLocalBranch', 'getConfig'), - array(self::REPO_PATH, $this->mock_cmd_runner) - ); + /** + * @expectedException RuntimeException + * @expectedExceptionMessage No remote branch was found + */ + function testGetRemoteBranchNoTrackingNoRemote() { + $repo_manager = $this->getMockBuilder('TryLib\RepoManager\Git') + ->setMethods(['getLocalBranch', 'getConfig']) + ->setConstructorArgs([self::REPO_PATH, $this->mock_cmd_runner]) + ->getMock(); $repo_manager->expects($this->at(0)) ->method('getLocalBranch') From 25e9674a977e5d11f0b90f3557b783c9a2625c81 Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:43:42 +0000 Subject: [PATCH 12/25] Fix RunnerTest --- phpunit.xml | 1 + tests/phpunit/TryRunner/RunnerTest.php | 29 ++++++++++++-------------- 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/phpunit.xml b/phpunit.xml index ec23464..5234c22 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -20,6 +20,7 @@ ./tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php ./tests/phpunit/Precheck/ScriptRunnerTest.php ./tests/phpunit/RepoManager/GitTest.php + ./tests/phpunit/TryRunner/RunnerTest.php diff --git a/tests/phpunit/TryRunner/RunnerTest.php b/tests/phpunit/TryRunner/RunnerTest.php index 6810034..01161c2 100644 --- a/tests/phpunit/TryRunner/RunnerTest.php +++ b/tests/phpunit/TryRunner/RunnerTest.php @@ -2,21 +2,18 @@ namespace tests\phpunit\TryRunner; -use PHPUnit_Framework_TestCase as TestCase; -use TryLib_TryRunner_Options as Options; -use TryLib_TryRunner_Runner as Runner; -use TryLib_RepoManager as RepoManager; +use TryLib\TryRunner\Options as Options; +use TryLib\TryRunner\Runner as Runner; +use TryLib\RepoManager as RepoManager; use RuntimeException; -use TryLib_JenkinsRunner as JenkinsRunner; +use TryLib\JenkinsRunner as JenkinsRunner; -require_once 'TryLib/TryRunner/Options.php'; -require_once 'TryLib/TryRunner/Runner.php'; /** * Simple integration tests for TryLib_TryRunner_Runner to make sure expected method calls are made * given certain options. */ -class RunnerTest extends TestCase { +class RunnerTest extends \PHPUnit\Framework\TestCase { public function testSimple() { $options_tuple = Options::parse( @@ -26,8 +23,8 @@ public function testSimple() { "jenkins_server", "/path/to/working/copy"); - $repo_manager = new TryRunner_RunnerTest__TestRepoManager(); - $jenkins_runner = new TryRunner_RunnerTest__TestJenkinsRunner(); + $repo_manager = new TestRepoManager(); + $jenkins_runner = new TestJenkinsRunner(); list($options, $flags, $extra) = $options_tuple; $try_runner = new Runner( @@ -66,8 +63,8 @@ public function testHonorRemoteBranch() { "/path/to/working/copy", null /* Set no default remote, to enable branch auto-detection. */); - $repo_manager = new TryRunner_RunnerTest__TestRepoManagerWithDetectedBranch(); - $jenkins_runner = new TryRunner_RunnerTest__TestJenkinsRunner(); + $repo_manager = new TestRepoManagerWithDetectedBranch(); + $jenkins_runner = new TestJenkinsRunner(); $try_runner = new Runner( $repo_manager, @@ -91,7 +88,7 @@ public function testHonorRemoteBranch() { } -class TryRunner_RunnerTest__TestRepoManager implements RepoManager { +class TestRepoManager implements RepoManager { public $remote_branch = null; public $ran_prechecks = false; @@ -115,8 +112,8 @@ public function runPreChecks(array $pre_checks) { } } -class TryRunner_RunnerTest__TestRepoManagerWithDetectedBranch - extends TryRunner_RunnerTest__TestRepoManager { +class TestRepoManagerWithDetectedBranch + extends TestRepoManager { public function setRemoteBranch($remote_branch) { if (!is_null($remote_branch)) { @@ -130,7 +127,7 @@ public function getRemoteBranch() { } } -class TryRunner_RunnerTest__TestJenkinsRunner extends JenkinsRunner { +class TestJenkinsRunner extends JenkinsRunner { public $commands_run = array(); public $ssh_key_path = null; From 4fcc1a79830dbac78219a9e68961cf6f3e860518 Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:45:07 +0000 Subject: [PATCH 13/25] fix OPtionsUtil test and enable all tests --- phpunit.xml | 11 +---------- tests/phpunit/Util/OptionsUtilTest.php | 7 ++----- 2 files changed, 3 insertions(+), 15 deletions(-) diff --git a/phpunit.xml b/phpunit.xml index 5234c22..90c0d8d 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -11,16 +11,7 @@ syntaxCheck="false"> - - ./tests/phpunit/JenkinsRunner/MasterProjectTest.php - ./tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php - ./tests/phpunit/JenkinsRunnerTest.php - ./tests/phpunit/Precheck/GitCopyAgeTest.php - ./tests/phpunit/Precheck/GitCopyBehindTest.php - ./tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php - ./tests/phpunit/Precheck/ScriptRunnerTest.php - ./tests/phpunit/RepoManager/GitTest.php - ./tests/phpunit/TryRunner/RunnerTest.php + ./tests/ diff --git a/tests/phpunit/Util/OptionsUtilTest.php b/tests/phpunit/Util/OptionsUtilTest.php index d55b8a9..b329a39 100644 --- a/tests/phpunit/Util/OptionsUtilTest.php +++ b/tests/phpunit/Util/OptionsUtilTest.php @@ -2,12 +2,9 @@ namespace tests\phpunit\Util; -use PHPUnit_Framework_TestCase as TestCase; -use TryLib_Util_OptionsUtil as OptionsUtil; +use TryLib\Util\OptionsUtil as OptionsUtil; -require_once "TryLib/Autoload.php"; - -class OptionsUtilTest extends TestCase { +class OptionsUtilTest extends \PHPUnit\Framework\TestCase { function provideExtraParameters() { return array( From c5e12f08c9635eb20fef5065701a9b45130c61c2 Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:46:03 +0000 Subject: [PATCH 14/25] move tests/phpunit to tests --- tests/{phpunit => }/JenkinsRunner/FreeStyleProjectTest.php | 0 tests/{phpunit => }/JenkinsRunner/MasterProjectTest.php | 0 tests/{phpunit => }/JenkinsRunnerTest.php | 0 tests/{phpunit => }/Precheck/GitCopyAgeTest.php | 0 tests/{phpunit => }/Precheck/GitCopyBehindTest.php | 0 tests/{phpunit => }/Precheck/GitWarnOnBlocklistedTest.php | 0 tests/{phpunit => }/Precheck/ScriptRunnerTest.php | 0 tests/{phpunit => }/RepoManager/GitTest.php | 0 tests/{phpunit => }/TryRunner/RunnerTest.php | 0 tests/{phpunit => }/Util/OptionsUtilTest.php | 0 10 files changed, 0 insertions(+), 0 deletions(-) rename tests/{phpunit => }/JenkinsRunner/FreeStyleProjectTest.php (100%) rename tests/{phpunit => }/JenkinsRunner/MasterProjectTest.php (100%) rename tests/{phpunit => }/JenkinsRunnerTest.php (100%) rename tests/{phpunit => }/Precheck/GitCopyAgeTest.php (100%) rename tests/{phpunit => }/Precheck/GitCopyBehindTest.php (100%) rename tests/{phpunit => }/Precheck/GitWarnOnBlocklistedTest.php (100%) rename tests/{phpunit => }/Precheck/ScriptRunnerTest.php (100%) rename tests/{phpunit => }/RepoManager/GitTest.php (100%) rename tests/{phpunit => }/TryRunner/RunnerTest.php (100%) rename tests/{phpunit => }/Util/OptionsUtilTest.php (100%) diff --git a/tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php b/tests/JenkinsRunner/FreeStyleProjectTest.php similarity index 100% rename from tests/phpunit/JenkinsRunner/FreeStyleProjectTest.php rename to tests/JenkinsRunner/FreeStyleProjectTest.php diff --git a/tests/phpunit/JenkinsRunner/MasterProjectTest.php b/tests/JenkinsRunner/MasterProjectTest.php similarity index 100% rename from tests/phpunit/JenkinsRunner/MasterProjectTest.php rename to tests/JenkinsRunner/MasterProjectTest.php diff --git a/tests/phpunit/JenkinsRunnerTest.php b/tests/JenkinsRunnerTest.php similarity index 100% rename from tests/phpunit/JenkinsRunnerTest.php rename to tests/JenkinsRunnerTest.php diff --git a/tests/phpunit/Precheck/GitCopyAgeTest.php b/tests/Precheck/GitCopyAgeTest.php similarity index 100% rename from tests/phpunit/Precheck/GitCopyAgeTest.php rename to tests/Precheck/GitCopyAgeTest.php diff --git a/tests/phpunit/Precheck/GitCopyBehindTest.php b/tests/Precheck/GitCopyBehindTest.php similarity index 100% rename from tests/phpunit/Precheck/GitCopyBehindTest.php rename to tests/Precheck/GitCopyBehindTest.php diff --git a/tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php b/tests/Precheck/GitWarnOnBlocklistedTest.php similarity index 100% rename from tests/phpunit/Precheck/GitWarnOnBlocklistedTest.php rename to tests/Precheck/GitWarnOnBlocklistedTest.php diff --git a/tests/phpunit/Precheck/ScriptRunnerTest.php b/tests/Precheck/ScriptRunnerTest.php similarity index 100% rename from tests/phpunit/Precheck/ScriptRunnerTest.php rename to tests/Precheck/ScriptRunnerTest.php diff --git a/tests/phpunit/RepoManager/GitTest.php b/tests/RepoManager/GitTest.php similarity index 100% rename from tests/phpunit/RepoManager/GitTest.php rename to tests/RepoManager/GitTest.php diff --git a/tests/phpunit/TryRunner/RunnerTest.php b/tests/TryRunner/RunnerTest.php similarity index 100% rename from tests/phpunit/TryRunner/RunnerTest.php rename to tests/TryRunner/RunnerTest.php diff --git a/tests/phpunit/Util/OptionsUtilTest.php b/tests/Util/OptionsUtilTest.php similarity index 100% rename from tests/phpunit/Util/OptionsUtilTest.php rename to tests/Util/OptionsUtilTest.php From 50e70a912e6eae3f5fbf5e86521bfb7e96cf48ee Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:48:29 +0000 Subject: [PATCH 15/25] Set version to 2.0 --- composer.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 6fcc410..6614fdb 100644 --- a/composer.json +++ b/composer.json @@ -1,6 +1,7 @@ { "name": "etsy/TryLib", "description": "Try lib : send your diffs to your CI cluster.", + "version": "2.0.0", "license": "MIT", "keywords": ["try", "etsy", "ci", "continuous integration"], "authors": [ @@ -8,7 +9,7 @@ "name": "Nassim Kammah", "email": "nkammah@etsy.com" }, - { + "name": "Laura Beth Lincoln Denker" } ], From df6780f465d72d7d63dd6135f0a4b877b548f78b Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:51:14 +0000 Subject: [PATCH 16/25] update travis config to use composer --- .travis.yml | 31 +++++++++++-------------------- 1 file changed, 11 insertions(+), 20 deletions(-) diff --git a/.travis.yml b/.travis.yml index bdd70fd..6fe981c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,23 +1,14 @@ language: php + php: - - "5.3" - - "5.4" - - "5.5" - - "7.0" - - "7.1" - + - 5.4 + - 5.5 + - 5.6 + - 7.0 + - 7.1 + before_script: - - pear config-set verbose 3 - - pear channel-discover pear.bovigo.org - - pear install bovigo/vfsStream-beta - - export PHP_INCLUDE_PATH=`pear config-get php_dir` - - export PHP_INI_FILE=`pear config-get php_ini` - - echo 'include_path = ".:${PHP_INCLUDE_PATH}"' >> $PHP_INI_FILE - - echo $PHP_INCLUDE_PATH - - phpenv rehash - -script: phpunit tests - -notifications: - email: false - irc: false + - composer self-update + - composer install --prefer-source --no-interaction --dev + +script: phpunit From 1356022776dc856b75f3696e7b22aaf530ebdcba Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:55:01 +0000 Subject: [PATCH 17/25] Updating README --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 43036ef..d6b7df9 100755 --- a/README.md +++ b/README.md @@ -180,10 +180,10 @@ Try will work with your branches! The below scenarios are supported: Prior to generate the diff, you can configure try to run a list of pre-checks. $pre_checks = array( - new TryLib_Precheck_ScriptRunner('/path/to/some/script'), - new TryLib_Precheck_GitCopyBehind(array('master')), - new TryLib_Precheck_GitCopyAge(48, 96, $remote_branch) - new TryLib_Precheck_GitReportUntracked(), + new TryLib\Precheck\ScriptRunner('/path/to/some/script'), + new TryLib\Precheck\GitCopyBehind(array('master')), + new TryLib\Precheck\GitCopyAge(48, 96, $remote_branch) + new TryLib\Precheck\GitReportUntracked(), ); $repo_manager->runPrechecks($pre_checks); @@ -194,4 +194,4 @@ Some pre-checks will just emit a warning, some can block the try execution. You can run the unit test suite with: - phpunit tests + phpunit From 90f5efdc4f64b044593a94feb1b67390831d12db Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:57:03 +0000 Subject: [PATCH 18/25] fix up demo script try-with-runner --- try-with-runner | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/try-with-runner b/try-with-runner index 63c3ed4..c16dcfc 100755 --- a/try-with-runner +++ b/try-with-runner @@ -1,26 +1,26 @@ #!/usr/bin/env php optionsTuple($options_tuple) ->jenkinsCliJarPath("/usr/etsy/jenkins-cli.jar") ->prechecks(array( - new TryLib_Precheck_GitCopyBehind(array('master')), - new TryLib_Precheck_GitReportUntracked(), + new TryLib\Precheck\GitCopyBehind(array('master')), + new TryLib\Precheck\GitReportUntracked(), )) ->build(); From c688b8a5cd356f34091d76428b4d89afbb680e5f Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:57:58 +0000 Subject: [PATCH 19/25] Delete package.xml and ignore patch.diff --- package.xml | 88 ----------------------------------------------------- 1 file changed, 88 deletions(-) delete mode 100644 package.xml diff --git a/package.xml b/package.xml deleted file mode 100644 index 14da106..0000000 --- a/package.xml +++ /dev/null @@ -1,88 +0,0 @@ - - - TryLib - etsy.github.com/TryLib - Try lib : send your diffs to your CI cluster. - - Try provides you the tool to submit a diff between your working copy and the upstream repo to your CI server. - - - Nassim Kammah - nkammah - nkammah@etsy.com - yes - - - Laura Beth Lincoln Denker - llincoln - >github@elblinkin.info - no - - 2017-01-04 - - 1.6.1 - 1.6.1 - - - stable - stable - - MIT - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 5.3.10 - - - 1.9.1 - - - - - From afc8082ddce1bb045faa153aa2a76e3ac552ed6e Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 21:59:48 +0000 Subject: [PATCH 20/25] ignore patch.diff --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 7579f74..6c4b7e1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ vendor composer.lock +patch.diff From 51e42d9b9f1667537854bf6e5547f4e3fbae4da5 Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 22:07:03 +0000 Subject: [PATCH 21/25] move src code to src folder --- composer.json | 4 ++-- {TryLib => src}/CommandRunner.php | 0 {TryLib => src}/JenkinsRunner.php | 0 {TryLib => src}/JenkinsRunner/FreeStyleProject.php | 0 {TryLib => src}/JenkinsRunner/MasterProject.php | 0 {TryLib => src}/Precheck.php | 0 {TryLib => src}/Precheck/GitCopyAge.php | 0 {TryLib => src}/Precheck/GitCopyBehind.php | 0 {TryLib => src}/Precheck/GitInvalidRepo.php | 0 {TryLib => src}/Precheck/GitReportUntracked.php | 0 {TryLib => src}/Precheck/GitWarnOnBlocklisted.php | 0 {TryLib => src}/Precheck/ScriptRunner.php | 0 {TryLib => src}/RepoManager.php | 0 {TryLib => src}/RepoManager/Git.php | 0 {TryLib => src}/TryRunner/Builder.php | 0 {TryLib => src}/TryRunner/Options.php | 0 {TryLib => src}/TryRunner/Runner.php | 0 {TryLib => src}/Util/AnsiColor.php | 0 {TryLib => src}/Util/OptionsUtil.php | 0 {TryLib => src}/Util/PHPOptions/LICENSE.MIT | 0 {TryLib => src}/Util/PHPOptions/LICENSE.python | 0 {TryLib => src}/Util/PHPOptions/Options.php | 0 {TryLib => src}/Util/PHPOptions/README.md | 0 23 files changed, 2 insertions(+), 2 deletions(-) rename {TryLib => src}/CommandRunner.php (100%) rename {TryLib => src}/JenkinsRunner.php (100%) rename {TryLib => src}/JenkinsRunner/FreeStyleProject.php (100%) rename {TryLib => src}/JenkinsRunner/MasterProject.php (100%) rename {TryLib => src}/Precheck.php (100%) rename {TryLib => src}/Precheck/GitCopyAge.php (100%) rename {TryLib => src}/Precheck/GitCopyBehind.php (100%) rename {TryLib => src}/Precheck/GitInvalidRepo.php (100%) rename {TryLib => src}/Precheck/GitReportUntracked.php (100%) rename {TryLib => src}/Precheck/GitWarnOnBlocklisted.php (100%) rename {TryLib => src}/Precheck/ScriptRunner.php (100%) rename {TryLib => src}/RepoManager.php (100%) rename {TryLib => src}/RepoManager/Git.php (100%) rename {TryLib => src}/TryRunner/Builder.php (100%) rename {TryLib => src}/TryRunner/Options.php (100%) rename {TryLib => src}/TryRunner/Runner.php (100%) rename {TryLib => src}/Util/AnsiColor.php (100%) rename {TryLib => src}/Util/OptionsUtil.php (100%) rename {TryLib => src}/Util/PHPOptions/LICENSE.MIT (100%) rename {TryLib => src}/Util/PHPOptions/LICENSE.python (100%) rename {TryLib => src}/Util/PHPOptions/Options.php (100%) rename {TryLib => src}/Util/PHPOptions/README.md (100%) diff --git a/composer.json b/composer.json index 6614fdb..cfc5995 100644 --- a/composer.json +++ b/composer.json @@ -9,7 +9,7 @@ "name": "Nassim Kammah", "email": "nkammah@etsy.com" }, - + { "name": "Laura Beth Lincoln Denker" } ], @@ -22,7 +22,7 @@ }, "autoload": { "psr-4": { - "TryLib\\": "TryLib/" + "TryLib\\": "src/" } } } diff --git a/TryLib/CommandRunner.php b/src/CommandRunner.php similarity index 100% rename from TryLib/CommandRunner.php rename to src/CommandRunner.php diff --git a/TryLib/JenkinsRunner.php b/src/JenkinsRunner.php similarity index 100% rename from TryLib/JenkinsRunner.php rename to src/JenkinsRunner.php diff --git a/TryLib/JenkinsRunner/FreeStyleProject.php b/src/JenkinsRunner/FreeStyleProject.php similarity index 100% rename from TryLib/JenkinsRunner/FreeStyleProject.php rename to src/JenkinsRunner/FreeStyleProject.php diff --git a/TryLib/JenkinsRunner/MasterProject.php b/src/JenkinsRunner/MasterProject.php similarity index 100% rename from TryLib/JenkinsRunner/MasterProject.php rename to src/JenkinsRunner/MasterProject.php diff --git a/TryLib/Precheck.php b/src/Precheck.php similarity index 100% rename from TryLib/Precheck.php rename to src/Precheck.php diff --git a/TryLib/Precheck/GitCopyAge.php b/src/Precheck/GitCopyAge.php similarity index 100% rename from TryLib/Precheck/GitCopyAge.php rename to src/Precheck/GitCopyAge.php diff --git a/TryLib/Precheck/GitCopyBehind.php b/src/Precheck/GitCopyBehind.php similarity index 100% rename from TryLib/Precheck/GitCopyBehind.php rename to src/Precheck/GitCopyBehind.php diff --git a/TryLib/Precheck/GitInvalidRepo.php b/src/Precheck/GitInvalidRepo.php similarity index 100% rename from TryLib/Precheck/GitInvalidRepo.php rename to src/Precheck/GitInvalidRepo.php diff --git a/TryLib/Precheck/GitReportUntracked.php b/src/Precheck/GitReportUntracked.php similarity index 100% rename from TryLib/Precheck/GitReportUntracked.php rename to src/Precheck/GitReportUntracked.php diff --git a/TryLib/Precheck/GitWarnOnBlocklisted.php b/src/Precheck/GitWarnOnBlocklisted.php similarity index 100% rename from TryLib/Precheck/GitWarnOnBlocklisted.php rename to src/Precheck/GitWarnOnBlocklisted.php diff --git a/TryLib/Precheck/ScriptRunner.php b/src/Precheck/ScriptRunner.php similarity index 100% rename from TryLib/Precheck/ScriptRunner.php rename to src/Precheck/ScriptRunner.php diff --git a/TryLib/RepoManager.php b/src/RepoManager.php similarity index 100% rename from TryLib/RepoManager.php rename to src/RepoManager.php diff --git a/TryLib/RepoManager/Git.php b/src/RepoManager/Git.php similarity index 100% rename from TryLib/RepoManager/Git.php rename to src/RepoManager/Git.php diff --git a/TryLib/TryRunner/Builder.php b/src/TryRunner/Builder.php similarity index 100% rename from TryLib/TryRunner/Builder.php rename to src/TryRunner/Builder.php diff --git a/TryLib/TryRunner/Options.php b/src/TryRunner/Options.php similarity index 100% rename from TryLib/TryRunner/Options.php rename to src/TryRunner/Options.php diff --git a/TryLib/TryRunner/Runner.php b/src/TryRunner/Runner.php similarity index 100% rename from TryLib/TryRunner/Runner.php rename to src/TryRunner/Runner.php diff --git a/TryLib/Util/AnsiColor.php b/src/Util/AnsiColor.php similarity index 100% rename from TryLib/Util/AnsiColor.php rename to src/Util/AnsiColor.php diff --git a/TryLib/Util/OptionsUtil.php b/src/Util/OptionsUtil.php similarity index 100% rename from TryLib/Util/OptionsUtil.php rename to src/Util/OptionsUtil.php diff --git a/TryLib/Util/PHPOptions/LICENSE.MIT b/src/Util/PHPOptions/LICENSE.MIT similarity index 100% rename from TryLib/Util/PHPOptions/LICENSE.MIT rename to src/Util/PHPOptions/LICENSE.MIT diff --git a/TryLib/Util/PHPOptions/LICENSE.python b/src/Util/PHPOptions/LICENSE.python similarity index 100% rename from TryLib/Util/PHPOptions/LICENSE.python rename to src/Util/PHPOptions/LICENSE.python diff --git a/TryLib/Util/PHPOptions/Options.php b/src/Util/PHPOptions/Options.php similarity index 100% rename from TryLib/Util/PHPOptions/Options.php rename to src/Util/PHPOptions/Options.php diff --git a/TryLib/Util/PHPOptions/README.md b/src/Util/PHPOptions/README.md similarity index 100% rename from TryLib/Util/PHPOptions/README.md rename to src/Util/PHPOptions/README.md From c5fb6a40a907e894ef1f580a206ddcd67422cd04 Mon Sep 17 00:00:00 2001 From: nkammah Date: Thu, 27 Apr 2017 22:33:50 +0000 Subject: [PATCH 22/25] fix bad str replacement from script that ported namespace change --- src/Util/AnsiColor.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Util/AnsiColor.php b/src/Util/AnsiColor.php index 56ae9e4..ec14c7b 100644 --- a/src/Util/AnsiColor.php +++ b/src/Util/AnsiColor.php @@ -102,7 +102,7 @@ public function __call($name, $args) { public function __toString() { $seq = $this->seq."\033[0m"; - $this->seq = 'TryLib\Util\PHPOptions\test'; + $this->seq = ''; return $seq; } } From 89525f43f156abe49a07486a3ab0c364c40007f8 Mon Sep 17 00:00:00 2001 From: nkammah Date: Fri, 28 Apr 2017 01:06:42 +0000 Subject: [PATCH 23/25] Lower phpunit req. version and up php req. version --- composer.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index cfc5995..0b0b4dd 100644 --- a/composer.json +++ b/composer.json @@ -14,10 +14,10 @@ } ], "require": { - "php": ">=5.3.10" + "php": ">=5.6.0" }, "require-dev": { - "phpunit/phpunit": ">=6.0.0", + "phpunit/phpunit": ">=5.5.0", "mikey179/vfsStream": "~1" }, "autoload": { From c53ad380c69e783829b2277364a1295a67bfcf44 Mon Sep 17 00:00:00 2001 From: nkammah Date: Fri, 28 Apr 2017 01:11:32 +0000 Subject: [PATCH 24/25] Add package type to composer file --- composer.json | 1 + 1 file changed, 1 insertion(+) diff --git a/composer.json b/composer.json index 0b0b4dd..302983c 100644 --- a/composer.json +++ b/composer.json @@ -1,5 +1,6 @@ { "name": "etsy/TryLib", + "type": "library", "description": "Try lib : send your diffs to your CI cluster.", "version": "2.0.0", "license": "MIT", From 76cce0c71cff0c4b3ceabe06b977f81de0c5ec85 Mon Sep 17 00:00:00 2001 From: nkammah Date: Fri, 28 Apr 2017 01:13:18 +0000 Subject: [PATCH 25/25] updating .travis.yml --- .travis.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 6fe981c..28921ff 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,8 +1,6 @@ language: php php: - - 5.4 - - 5.5 - 5.6 - 7.0 - 7.1