Updated commands

This commit is contained in:
Alejandro Celaya 2019-04-14 09:10:00 +02:00
parent fdbe93f0fb
commit feb67e76f0
5 changed files with 14 additions and 11 deletions

View File

@ -14,7 +14,7 @@ return [
Command\ShortUrl\GeneratePreviewCommand::NAME => Command\ShortUrl\GeneratePreviewCommand::class, Command\ShortUrl\GeneratePreviewCommand::NAME => Command\ShortUrl\GeneratePreviewCommand::class,
Command\ShortUrl\DeleteShortUrlCommand::NAME => Command\ShortUrl\DeleteShortUrlCommand::class, Command\ShortUrl\DeleteShortUrlCommand::NAME => Command\ShortUrl\DeleteShortUrlCommand::class,
Command\Visit\ProcessVisitsCommand::NAME => Command\Visit\ProcessVisitsCommand::class, Command\Visit\LocateVisitsCommand::NAME => Command\Visit\LocateVisitsCommand::class,
Command\Visit\UpdateDbCommand::NAME => Command\Visit\UpdateDbCommand::class, Command\Visit\UpdateDbCommand::NAME => Command\Visit\UpdateDbCommand::class,
Command\Config\GenerateCharsetCommand::NAME => Command\Config\GenerateCharsetCommand::class, Command\Config\GenerateCharsetCommand::NAME => Command\Config\GenerateCharsetCommand::class,

View File

@ -26,7 +26,7 @@ return [
Command\ShortUrl\GeneratePreviewCommand::class => ConfigAbstractFactory::class, Command\ShortUrl\GeneratePreviewCommand::class => ConfigAbstractFactory::class,
Command\ShortUrl\DeleteShortUrlCommand::class => ConfigAbstractFactory::class, Command\ShortUrl\DeleteShortUrlCommand::class => ConfigAbstractFactory::class,
Command\Visit\ProcessVisitsCommand::class => ConfigAbstractFactory::class, Command\Visit\LocateVisitsCommand::class => ConfigAbstractFactory::class,
Command\Visit\UpdateDbCommand::class => ConfigAbstractFactory::class, Command\Visit\UpdateDbCommand::class => ConfigAbstractFactory::class,
Command\Config\GenerateCharsetCommand::class => InvokableFactory::class, Command\Config\GenerateCharsetCommand::class => InvokableFactory::class,
@ -51,7 +51,7 @@ return [
Command\ShortUrl\GeneratePreviewCommand::class => [Service\ShortUrlService::class, PreviewGenerator::class], Command\ShortUrl\GeneratePreviewCommand::class => [Service\ShortUrlService::class, PreviewGenerator::class],
Command\ShortUrl\DeleteShortUrlCommand::class => [Service\ShortUrl\DeleteShortUrlService::class], Command\ShortUrl\DeleteShortUrlCommand::class => [Service\ShortUrl\DeleteShortUrlService::class],
Command\Visit\ProcessVisitsCommand::class => [ Command\Visit\LocateVisitsCommand::class => [
Service\VisitService::class, Service\VisitService::class,
IpLocationResolverInterface::class, IpLocationResolverInterface::class,
Lock\Factory::class, Lock\Factory::class,

View File

@ -20,9 +20,10 @@ use Symfony\Component\Lock\Factory as Locker;
use function sprintf; use function sprintf;
class ProcessVisitsCommand extends Command class LocateVisitsCommand extends Command
{ {
public const NAME = 'visit:process'; public const NAME = 'visit:locate';
public const ALIASES = ['visit:process'];
/** @var VisitServiceInterface */ /** @var VisitServiceInterface */
private $visitService; private $visitService;
@ -48,7 +49,8 @@ class ProcessVisitsCommand extends Command
{ {
$this $this
->setName(self::NAME) ->setName(self::NAME)
->setDescription('Processes visits where location is not set yet'); ->setAliases(self::ALIASES)
->setDescription('Resolves visits origin locations.');
} }
protected function execute(InputInterface $input, OutputInterface $output): ?int protected function execute(InputInterface $input, OutputInterface $output): ?int

View File

@ -15,6 +15,7 @@ use Symfony\Component\Console\Style\SymfonyStyle;
use function sprintf; use function sprintf;
/** @deprecated */
class UpdateDbCommand extends Command class UpdateDbCommand extends Command
{ {
public const NAME = 'visit:update-db'; public const NAME = 'visit:update-db';
@ -32,7 +33,7 @@ class UpdateDbCommand extends Command
{ {
$this $this
->setName(self::NAME) ->setName(self::NAME)
->setDescription('Updates the GeoLite2 database file used to geolocate IP addresses') ->setDescription('[DEPRECATED] Updates the GeoLite2 database file used to geolocate IP addresses')
->setHelp( ->setHelp(
'The GeoLite2 database is updated first Tuesday every month, so this command should be ideally run ' 'The GeoLite2 database is updated first Tuesday every month, so this command should be ideally run '
. 'every first Wednesday' . 'every first Wednesday'

View File

@ -6,7 +6,7 @@ namespace ShlinkioTest\Shlink\CLI\Command\Visit;
use PHPUnit\Framework\TestCase; use PHPUnit\Framework\TestCase;
use Prophecy\Argument; use Prophecy\Argument;
use Prophecy\Prophecy\ObjectProphecy; use Prophecy\Prophecy\ObjectProphecy;
use Shlinkio\Shlink\CLI\Command\Visit\ProcessVisitsCommand; use Shlinkio\Shlink\CLI\Command\Visit\LocateVisitsCommand;
use Shlinkio\Shlink\Common\Exception\WrongIpException; use Shlinkio\Shlink\Common\Exception\WrongIpException;
use Shlinkio\Shlink\Common\IpGeolocation\IpApiLocationResolver; use Shlinkio\Shlink\Common\IpGeolocation\IpApiLocationResolver;
use Shlinkio\Shlink\Common\IpGeolocation\Model\Location; use Shlinkio\Shlink\Common\IpGeolocation\Model\Location;
@ -24,7 +24,7 @@ use Symfony\Component\Lock;
use function array_shift; use function array_shift;
use function sprintf; use function sprintf;
class ProcessVisitsCommandTest extends TestCase class LocateVisitsCommandTest extends TestCase
{ {
/** @var CommandTester */ /** @var CommandTester */
private $commandTester; private $commandTester;
@ -49,7 +49,7 @@ class ProcessVisitsCommandTest extends TestCase
}); });
$this->locker->createLock(Argument::type('string'))->willReturn($this->lock->reveal()); $this->locker->createLock(Argument::type('string'))->willReturn($this->lock->reveal());
$command = new ProcessVisitsCommand( $command = new LocateVisitsCommand(
$this->visitService->reveal(), $this->visitService->reveal(),
$this->ipResolver->reveal(), $this->ipResolver->reveal(),
$this->locker->reveal() $this->locker->reveal()
@ -176,7 +176,7 @@ class ProcessVisitsCommandTest extends TestCase
$output = $this->commandTester->getDisplay(); $output = $this->commandTester->getDisplay();
$this->assertStringContainsString( $this->assertStringContainsString(
sprintf('There is already an instance of the "%s" command', ProcessVisitsCommand::NAME), sprintf('There is already an instance of the "%s" command', LocateVisitsCommand::NAME),
$output $output
); );
$locateVisits->shouldNotHaveBeenCalled(); $locateVisits->shouldNotHaveBeenCalled();