mirror of
https://github.com/shlinkio/shlink.git
synced 2025-02-25 18:45:27 -06:00
Updated commands
This commit is contained in:
parent
fdbe93f0fb
commit
feb67e76f0
@ -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,
|
||||||
|
@ -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,
|
||||||
|
@ -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
|
@ -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'
|
||||||
|
@ -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();
|
Loading…
Reference in New Issue
Block a user