[Nostromo] Remove Static calls. Mess Detector recommendation.

This commit is contained in:
Andrés Montañez 2017-01-07 21:17:14 -03:00
parent 93af5ee8cc
commit 9f74c3f431
4 changed files with 28 additions and 23 deletions

View file

@ -63,6 +63,7 @@ abstract class AbstractCommand extends Command
*/ */
protected function getStageName() protected function getStageName()
{ {
return Utils::getStageName($this->runtime->getStage()); $utils = new Utils();
return $utils->getStageName($this->runtime->getStage());
} }
} }

View file

@ -51,6 +51,7 @@ class ListCommand extends AbstractCommand
*/ */
protected function execute(InputInterface $input, OutputInterface $output) protected function execute(InputInterface $input, OutputInterface $output)
{ {
$utils = new Utils();
$output->writeln('Starting <fg=blue>Magallanes</>'); $output->writeln('Starting <fg=blue>Magallanes</>');
$output->writeln(''); $output->writeln('');
@ -114,12 +115,12 @@ class ListCommand extends AbstractCommand
$output->writeln(sprintf(' Releases on host <fg=black;options=bold>%s</>:', $host)); $output->writeln(sprintf(' Releases on host <fg=black;options=bold>%s</>:', $host));
foreach ($releases as $releaseId) { foreach ($releases as $releaseId) {
$releaseDate = Utils::getReleaseDate($releaseId); $releaseDate = $utils->getReleaseDate($releaseId);
$output->write(sprintf(' Release ID: <fg=magenta>%s</> - Date: <fg=black;options=bold>%s</> [%s]', $output->write(sprintf(' Release ID: <fg=magenta>%s</> - Date: <fg=black;options=bold>%s</> [%s]',
$releaseId, $releaseId,
$releaseDate->format('Y-m-d H:i:s'), $releaseDate->format('Y-m-d H:i:s'),
Utils::getTimeDiff($releaseDate) $utils->getTimeDiff($releaseDate)
)); ));
if ($releaseId == $currentReleaseId) { if ($releaseId == $currentReleaseId) {

View file

@ -19,18 +19,20 @@ class UtilsTest extends TestCase
{ {
public function testStageNames() public function testStageNames()
{ {
$this->assertEquals('Pre Deploy', Utils::getStageName(Runtime::PRE_DEPLOY)); $utils = new Utils();
$this->assertEquals('On Deploy', Utils::getStageName(Runtime::ON_DEPLOY)); $this->assertEquals('Pre Deploy', $utils->getStageName(Runtime::PRE_DEPLOY));
$this->assertEquals('Post Deploy', Utils::getStageName(Runtime::POST_DEPLOY)); $this->assertEquals('On Deploy', $utils->getStageName(Runtime::ON_DEPLOY));
$this->assertEquals('On Release', Utils::getStageName(Runtime::ON_RELEASE)); $this->assertEquals('Post Deploy', $utils->getStageName(Runtime::POST_DEPLOY));
$this->assertEquals('Post Release', Utils::getStageName(Runtime::POST_RELEASE)); $this->assertEquals('On Release', $utils->getStageName(Runtime::ON_RELEASE));
$this->assertEquals('invalid-stage', Utils::getStageName('invalid-stage')); $this->assertEquals('Post Release', $utils->getStageName(Runtime::POST_RELEASE));
$this->assertEquals('invalid-stage', $utils->getStageName('invalid-stage'));
} }
public function testReleaseDate() public function testReleaseDate()
{ {
$utils = new Utils();
$releaseId = '20170102031530'; $releaseId = '20170102031530';
$dateTime = Utils::getReleaseDate($releaseId); $dateTime = $utils->getReleaseDate($releaseId);
$this->assertTrue($dateTime instanceof DateTime); $this->assertTrue($dateTime instanceof DateTime);
@ -39,44 +41,45 @@ class UtilsTest extends TestCase
public function testTimeDiffs() public function testTimeDiffs()
{ {
$utils = new Utils();
$dateTime = new DateTime(); $dateTime = new DateTime();
$dateTime->modify('-1 second'); $dateTime->modify('-1 second');
$this->assertEquals('just now', Utils::getTimeDiff($dateTime)); $this->assertEquals('just now', $utils->getTimeDiff($dateTime));
$dateTime = new DateTime(); $dateTime = new DateTime();
$dateTime->modify('-45 seconds'); $dateTime->modify('-45 seconds');
$this->assertEquals('45 seconds ago', Utils::getTimeDiff($dateTime)); $this->assertEquals('45 seconds ago', $utils->getTimeDiff($dateTime));
$dateTime = new DateTime(); $dateTime = new DateTime();
$dateTime->modify('-90 seconds'); $dateTime->modify('-90 seconds');
$this->assertEquals('one minute ago', Utils::getTimeDiff($dateTime)); $this->assertEquals('one minute ago', $utils->getTimeDiff($dateTime));
$dateTime = new DateTime(); $dateTime = new DateTime();
$dateTime->modify('-30 minutes'); $dateTime->modify('-30 minutes');
$this->assertEquals('30 minutes ago', Utils::getTimeDiff($dateTime)); $this->assertEquals('30 minutes ago', $utils->getTimeDiff($dateTime));
$dateTime = new DateTime(); $dateTime = new DateTime();
$dateTime->modify('-1 hour'); $dateTime->modify('-1 hour');
$this->assertEquals('one hour ago', Utils::getTimeDiff($dateTime)); $this->assertEquals('one hour ago', $utils->getTimeDiff($dateTime));
$dateTime = new DateTime(); $dateTime = new DateTime();
$dateTime->modify('-10 hours'); $dateTime->modify('-10 hours');
$this->assertEquals('10 hours ago', Utils::getTimeDiff($dateTime)); $this->assertEquals('10 hours ago', $utils->getTimeDiff($dateTime));
$dateTime = new DateTime(); $dateTime = new DateTime();
$dateTime->modify('-1 day'); $dateTime->modify('-1 day');
$this->assertEquals('one day ago', Utils::getTimeDiff($dateTime)); $this->assertEquals('one day ago', $utils->getTimeDiff($dateTime));
$dateTime = new DateTime(); $dateTime = new DateTime();
$dateTime->modify('-3 days'); $dateTime->modify('-3 days');
$this->assertEquals('3 days ago', Utils::getTimeDiff($dateTime)); $this->assertEquals('3 days ago', $utils->getTimeDiff($dateTime));
$dateTime = new DateTime(); $dateTime = new DateTime();
$dateTime->modify('-7 days'); $dateTime->modify('-7 days');
$this->assertEquals('a week ago', Utils::getTimeDiff($dateTime)); $this->assertEquals('a week ago', $utils->getTimeDiff($dateTime));
$dateTime = new DateTime(); $dateTime = new DateTime();
$dateTime->modify('-10 days'); $dateTime->modify('-10 days');
$this->assertEquals('', Utils::getTimeDiff($dateTime)); $this->assertEquals('', $utils->getTimeDiff($dateTime));
} }
} }

View file

@ -26,7 +26,7 @@ class Utils
* @param string $stage * @param string $stage
* @return string * @return string
*/ */
public static function getStageName($stage) public function getStageName($stage)
{ {
switch ($stage) { switch ($stage) {
case Runtime::PRE_DEPLOY: case Runtime::PRE_DEPLOY:
@ -59,7 +59,7 @@ class Utils
* @param string $releaseId The Release ID * @param string $releaseId The Release ID
* @return DateTime * @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', $formatted = sprintf('%d%d%d%d-%d%d-%d%d %d%d:%d%d:%d%d',
$releaseId[0], $releaseId[1], $releaseId[2], $releaseId[3], $releaseId[0], $releaseId[1], $releaseId[2], $releaseId[3],
@ -79,7 +79,7 @@ class Utils
* @param DateTime $releaseDate * @param DateTime $releaseDate
* @return string * @return string
*/ */
public static function getTimeDiff(DateTime $releaseDate) public function getTimeDiff(DateTime $releaseDate)
{ {
$textDiff = ''; $textDiff = '';
$now = new DateTime(); $now = new DateTime();