diff --git a/src/Mage/Command/AbstractCommand.php b/src/Mage/Command/AbstractCommand.php index 9d0c578..d26584e 100644 --- a/src/Mage/Command/AbstractCommand.php +++ b/src/Mage/Command/AbstractCommand.php @@ -63,6 +63,7 @@ abstract class AbstractCommand extends Command */ protected function getStageName() { - return Utils::getStageName($this->runtime->getStage()); + $utils = new Utils(); + return $utils->getStageName($this->runtime->getStage()); } } diff --git a/src/Mage/Command/BuiltIn/Releases/ListCommand.php b/src/Mage/Command/BuiltIn/Releases/ListCommand.php index d935ac7..2133249 100644 --- a/src/Mage/Command/BuiltIn/Releases/ListCommand.php +++ b/src/Mage/Command/BuiltIn/Releases/ListCommand.php @@ -51,6 +51,7 @@ class ListCommand extends AbstractCommand */ protected function execute(InputInterface $input, OutputInterface $output) { + $utils = new Utils(); $output->writeln('Starting Magallanes'); $output->writeln(''); @@ -114,12 +115,12 @@ class ListCommand extends AbstractCommand $output->writeln(sprintf(' Releases on host %s:', $host)); foreach ($releases as $releaseId) { - $releaseDate = Utils::getReleaseDate($releaseId); + $releaseDate = $utils->getReleaseDate($releaseId); $output->write(sprintf(' Release ID: %s - Date: %s [%s]', $releaseId, $releaseDate->format('Y-m-d H:i:s'), - Utils::getTimeDiff($releaseDate) + $utils->getTimeDiff($releaseDate) )); if ($releaseId == $currentReleaseId) { diff --git a/src/Mage/Tests/UtilsTest.php b/src/Mage/Tests/UtilsTest.php index 307394c..1dd1f77 100644 --- a/src/Mage/Tests/UtilsTest.php +++ b/src/Mage/Tests/UtilsTest.php @@ -19,18 +19,20 @@ class UtilsTest extends TestCase { public function testStageNames() { - $this->assertEquals('Pre Deploy', Utils::getStageName(Runtime::PRE_DEPLOY)); - $this->assertEquals('On Deploy', Utils::getStageName(Runtime::ON_DEPLOY)); - $this->assertEquals('Post Deploy', Utils::getStageName(Runtime::POST_DEPLOY)); - $this->assertEquals('On Release', Utils::getStageName(Runtime::ON_RELEASE)); - $this->assertEquals('Post Release', Utils::getStageName(Runtime::POST_RELEASE)); - $this->assertEquals('invalid-stage', Utils::getStageName('invalid-stage')); + $utils = new Utils(); + $this->assertEquals('Pre Deploy', $utils->getStageName(Runtime::PRE_DEPLOY)); + $this->assertEquals('On Deploy', $utils->getStageName(Runtime::ON_DEPLOY)); + $this->assertEquals('Post Deploy', $utils->getStageName(Runtime::POST_DEPLOY)); + $this->assertEquals('On Release', $utils->getStageName(Runtime::ON_RELEASE)); + $this->assertEquals('Post Release', $utils->getStageName(Runtime::POST_RELEASE)); + $this->assertEquals('invalid-stage', $utils->getStageName('invalid-stage')); } public function testReleaseDate() { + $utils = new Utils(); $releaseId = '20170102031530'; - $dateTime = Utils::getReleaseDate($releaseId); + $dateTime = $utils->getReleaseDate($releaseId); $this->assertTrue($dateTime instanceof DateTime); @@ -39,44 +41,45 @@ class UtilsTest extends TestCase public function testTimeDiffs() { + $utils = new Utils(); $dateTime = new DateTime(); $dateTime->modify('-1 second'); - $this->assertEquals('just now', Utils::getTimeDiff($dateTime)); + $this->assertEquals('just now', $utils->getTimeDiff($dateTime)); $dateTime = new DateTime(); $dateTime->modify('-45 seconds'); - $this->assertEquals('45 seconds ago', Utils::getTimeDiff($dateTime)); + $this->assertEquals('45 seconds ago', $utils->getTimeDiff($dateTime)); $dateTime = new DateTime(); $dateTime->modify('-90 seconds'); - $this->assertEquals('one minute ago', Utils::getTimeDiff($dateTime)); + $this->assertEquals('one minute ago', $utils->getTimeDiff($dateTime)); $dateTime = new DateTime(); $dateTime->modify('-30 minutes'); - $this->assertEquals('30 minutes ago', Utils::getTimeDiff($dateTime)); + $this->assertEquals('30 minutes ago', $utils->getTimeDiff($dateTime)); $dateTime = new DateTime(); $dateTime->modify('-1 hour'); - $this->assertEquals('one hour ago', Utils::getTimeDiff($dateTime)); + $this->assertEquals('one hour ago', $utils->getTimeDiff($dateTime)); $dateTime = new DateTime(); $dateTime->modify('-10 hours'); - $this->assertEquals('10 hours ago', Utils::getTimeDiff($dateTime)); + $this->assertEquals('10 hours ago', $utils->getTimeDiff($dateTime)); $dateTime = new DateTime(); $dateTime->modify('-1 day'); - $this->assertEquals('one day ago', Utils::getTimeDiff($dateTime)); + $this->assertEquals('one day ago', $utils->getTimeDiff($dateTime)); $dateTime = new DateTime(); $dateTime->modify('-3 days'); - $this->assertEquals('3 days ago', Utils::getTimeDiff($dateTime)); + $this->assertEquals('3 days ago', $utils->getTimeDiff($dateTime)); $dateTime = new DateTime(); $dateTime->modify('-7 days'); - $this->assertEquals('a week ago', Utils::getTimeDiff($dateTime)); + $this->assertEquals('a week ago', $utils->getTimeDiff($dateTime)); $dateTime = new DateTime(); $dateTime->modify('-10 days'); - $this->assertEquals('', Utils::getTimeDiff($dateTime)); + $this->assertEquals('', $utils->getTimeDiff($dateTime)); } } diff --git a/src/Mage/Utils.php b/src/Mage/Utils.php index ca5b649..9cf99e0 100644 --- a/src/Mage/Utils.php +++ b/src/Mage/Utils.php @@ -26,7 +26,7 @@ class Utils * @param string $stage * @return string */ - public static function getStageName($stage) + public function getStageName($stage) { switch ($stage) { case Runtime::PRE_DEPLOY: @@ -59,7 +59,7 @@ class Utils * @param string $releaseId The Release ID * @return DateTime */ - public static function getReleaseDate($releaseId) + public function getReleaseDate($releaseId) { $formatted = sprintf('%d%d%d%d-%d%d-%d%d %d%d:%d%d:%d%d', $releaseId[0], $releaseId[1], $releaseId[2], $releaseId[3], @@ -79,7 +79,7 @@ class Utils * @param DateTime $releaseDate * @return string */ - public static function getTimeDiff(DateTime $releaseDate) + public function getTimeDiff(DateTime $releaseDate) { $textDiff = ''; $now = new DateTime();