Skip to content

Commit 1a42546

Browse files
authored
Merge pull request #29 from Sylius/bring-back-price-history
Bring back the Price History rector rules
2 parents 639cf99 + 0d1ff36 commit 1a42546

File tree

5 files changed

+99
-82
lines changed

5 files changed

+99
-82
lines changed

composer.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
"extra": {
4646
"enable-patching": true,
4747
"branch-alias": {
48-
"dev-main": "1.0-dev"
48+
"dev-main": "2.0-dev"
4949
},
5050
"rector": {
5151
"includes": [

config/sets/sylius/price-history/up-sylius-1.13-with-price-history-plugin-to-sylius-1.13.php

+54-39
Original file line numberDiff line numberDiff line change
@@ -3,45 +3,60 @@
33
declare(strict_types=1);
44

55
use Rector\Config\RectorConfig;
6+
use Rector\Removing\Rector\Class_\RemoveTraitUseRector;
7+
use Rector\Renaming\Rector\Name\RenameClassRector;
68

79
return static function (RectorConfig $rectorConfig): void {
8-
// $rectorConfig->ruleWithConfiguration(RenameNamespaceRector::class, [
9-
// 'Sylius\PriceHistoryPlugin\Application\Calculator\ProductVariantLowestPriceCalculator' => 'Sylius\Component\Core\Calculator\ProductVariantPriceCalculator',
10-
// 'Sylius\PriceHistoryPlugin\Application\Checker' => 'Sylius\Component\Core\Checker',
11-
// 'Sylius\PriceHistoryPlugin\Application\Command' => 'Sylius\Bundle\CoreBundle\PriceHistory\Command',
12-
// 'Sylius\PriceHistoryPlugin\Application\CommandDispatcher' => 'Sylius\Bundle\CoreBundle\PriceHistory\CommandDispatcher',
13-
// 'Sylius\PriceHistoryPlugin\Application\CommandHandler' => 'Sylius\Bundle\CoreBundle\PriceHistory\CommandHandler',
14-
// 'Sylius\PriceHistoryPlugin\Application\Logger' => 'Sylius\Bundle\CoreBundle\PriceHistory\Logger',
15-
// 'Sylius\PriceHistoryPlugin\Application\Processor' => 'Sylius\Bundle\CoreBundle\PriceHistory\Processor',
16-
// 'Sylius\PriceHistoryPlugin\Application\Remover\ChannelPricingLogEntriesRemoverInterface' => 'Sylius\Bundle\CoreBundle\PriceHistory\Remover\ChannelPricingLogEntriesRemoverInterface',
17-
// 'Sylius\PriceHistoryPlugin\Application\Templating\Helper' => 'Sylius\Bundle\CoreBundle\Templating\Helper',
18-
// 'Sylius\PriceHistoryPlugin\Application\Validator\ResourceInputDataPropertiesValidatorInterface' => 'Sylius\Bundle\ApiBundle\Validator\ResourceInputDataPropertiesValidatorInterface',
19-
// 'Sylius\PriceHistoryPlugin\Domain\Factory' => 'Sylius\Component\Core\Factory',
20-
// 'Sylius\PriceHistoryPlugin\Domain\Model\ChannelInterface' => 'Sylius\Component\Core\Model\ChannelInterface',
21-
// 'Sylius\PriceHistoryPlugin\Domain\Model\ChannelPriceHistoryConfig' => 'Sylius\Component\Core\Model\ChannelPriceHistoryConfig',
22-
// 'Sylius\PriceHistoryPlugin\Domain\Model\ChannelPriceHistoryConfigInterface' => 'Sylius\Component\Core\Model\ChannelPriceHistoryConfigInterface',
23-
// 'Sylius\PriceHistoryPlugin\Domain\Model\ChannelPricingInterface' => 'Sylius\Component\Core\Model\ChannelPricingInterface',
24-
// 'Sylius\PriceHistoryPlugin\Domain\Model\ChannelPricingLogEntry' => 'Sylius\Component\Core\Model\ChannelPricingLogEntry',
25-
// 'Sylius\PriceHistoryPlugin\Domain\Model\ChannelPricingLogEntryInterface' => 'Sylius\Component\Core\Model\ChannelPricingLogEntryInterface',
26-
// 'Sylius\PriceHistoryPlugin\Domain\Model\LowestPriceBeforeDiscountAwareInterface' => 'Sylius\Component\Core\Model\ChannelPricingInterface',
27-
// 'Sylius\PriceHistoryPlugin\Domain\Repository\ChannelPricingLogEntryRepositoryInterface' => 'Sylius\Component\Core\Repository\ChannelPricingLogEntryRepositoryInterface',
28-
// 'Sylius\PriceHistoryPlugin\Infrastructure\Cli\Command' => 'Sylius\Bundle\CoreBundle\PriceHistory\Cli\Command',
29-
// 'Sylius\PriceHistoryPlugin\Infrastructure\Doctrine\ORM\ChannelPricingLogEntryRepository' => 'Sylius\Bundle\CoreBundle\Doctrine\ORM\ChannelPricingLogEntryRepository',
30-
// 'Sylius\PriceHistoryPlugin\Infrastructure\Doctrine\ORM\ChannelPricingLogEntryRepositoryInterface' => 'Sylius\Component\Core\Repository\ChannelPricingLogEntryRepositoryInterface',
31-
// 'Sylius\PriceHistoryPlugin\Infrastructure\EntityObserver' => 'Sylius\Bundle\CoreBundle\PriceHistory\EntityObserver',
32-
// 'Sylius\PriceHistoryPlugin\Infrastructure\Event' => 'Sylius\Bundle\CoreBundle\PriceHistory\Event',
33-
// 'Sylius\PriceHistoryPlugin\Infrastructure\Event\OldChannelPricingLogEntriesEvents' => 'Sylius\Bundle\CoreBundle\PriceHistory\Event\OldChannelPricingLogEntriesEvents',
34-
// 'Sylius\PriceHistoryPlugin\Infrastructure\EventListener' => 'Sylius\Bundle\CoreBundle\PriceHistory\EventListener',
35-
// 'Sylius\PriceHistoryPlugin\Infrastructure\EventSubscriber' => 'Sylius\Bundle\CoreBundle\PriceHistory\EventSubscriber',
36-
// 'Sylius\PriceHistoryPlugin\Infrastructure\Form' => 'Sylius\Bundle\CoreBundle\Form',
37-
// 'Sylius\PriceHistoryPlugin\Infrastructure\Provider' => 'Sylius\Component\Core\Provider',
38-
// 'Sylius\PriceHistoryPlugin\Infrastructure\Remover\ChannelPricingLogEntriesRemover' => 'Sylius\Bundle\CoreBundle\PriceHistory\Remover\ChannelPricingLogEntriesRemover',
39-
// 'Sylius\PriceHistoryPlugin\Infrastructure\Serializer' => 'Sylius\Bundle\ApiBundle\Serializer',
40-
// 'Sylius\PriceHistoryPlugin\Infrastructure\Twig' => 'Sylius\Bundle\CoreBundle\Twig',
41-
// 'Sylius\PriceHistoryPlugin\Infrastructure\Validator' => 'Sylius\Bundle\ApiBundle\Validator',
42-
// ]);
43-
// $rectorConfig->ruleWithConfiguration(RemoveTraitUseRector::class, [
44-
// 'Sylius\PriceHistoryPlugin\Domain\Model\ChannelPriceHistoryConfigAwareTrait',
45-
// 'Sylius\PriceHistoryPlugin\Domain\Model\LowestPriceBeforeDiscountAwareTrait',
46-
// ]);
10+
$rectorConfig->ruleWithConfiguration(RenameClassRector::class, [
11+
'Sylius\PriceHistoryPlugin\Application\Calculator\ProductVariantLowestPriceCalculator' => 'Sylius\Component\Core\Calculator\ProductVariantPriceCalculator',
12+
'Sylius\PriceHistoryPlugin\Application\Calculator\ProductVariantLowestPriceCalculatorInterface' => 'Sylius\Component\Core\Calculator\ProductVariantPriceCalculatorInterface',
13+
'Sylius\PriceHistoryPlugin\Application\Checker\ProductVariantLowestPriceDisplayChecker' => 'Sylius\Component\Core\Checker\ProductVariantLowestPriceDisplayChecker',
14+
'Sylius\PriceHistoryPlugin\Application\Checker\ProductVariantLowestPriceDisplayCheckerInterface' => 'Sylius\Component\Core\Checker\ProductVariantLowestPriceDisplayCheckerInterface',
15+
'Sylius\PriceHistoryPlugin\Application\Command\ApplyLowestPriceOnChannelPricings' => 'Sylius\Bundle\CoreBundle\PriceHistory\Command\ApplyLowestPriceOnChannelPricings',
16+
'Sylius\PriceHistoryPlugin\Application\CommandDispatcher\ApplyLowestPriceOnChannelPricingsCommandDispatcherInterface' => 'Sylius\Bundle\CoreBundle\PriceHistory\CommandDispatcher\ApplyLowestPriceOnChannelPricingsCommandDispatcherInterface',
17+
'Sylius\PriceHistoryPlugin\Application\CommandDispatcher\BatchedApplyLowestPriceOnChannelPricingsCommandDispatcher' => 'Sylius\Bundle\CoreBundle\PriceHistory\CommandDispatcher\BatchedApplyLowestPriceOnChannelPricingsCommandDispatcher',
18+
'Sylius\PriceHistoryPlugin\Application\CommandHandler\ApplyLowestPriceOnChannelPricingsHandler' => 'Sylius\Bundle\CoreBundle\PriceHistory\CommandHandler\ApplyLowestPriceOnChannelPricingsHandler',
19+
'Sylius\PriceHistoryPlugin\Application\Logger\PriceChangeLogger' => 'Sylius\Bundle\CoreBundle\PriceHistory\Logger\PriceChangeLogger',
20+
'Sylius\PriceHistoryPlugin\Application\Logger\PriceChangeLoggerInterface' => 'Sylius\Bundle\CoreBundle\PriceHistory\Logger\PriceChangeLoggerInterface',
21+
'Sylius\PriceHistoryPlugin\Application\Processor\ProductLowestPriceBeforeDiscountProcessor' => 'Sylius\Bundle\CoreBundle\PriceHistory\Processor\ProductLowestPriceBeforeDiscountProcessor',
22+
'Sylius\PriceHistoryPlugin\Application\Processor\ProductLowestPriceBeforeDiscountProcessorInterface' => 'Sylius\Bundle\CoreBundle\PriceHistory\Processor\ProductLowestPriceBeforeDiscountProcessorInterface',
23+
'Sylius\PriceHistoryPlugin\Application\Remover\ChannelPricingLogEntriesRemoverInterface' => 'Sylius\Bundle\CoreBundle\PriceHistory\Remover\ChannelPricingLogEntriesRemoverInterface',
24+
'Sylius\PriceHistoryPlugin\Application\Templating\Helper\PriceHelper' => 'Sylius\Bundle\CoreBundle\Templating\Helper\PriceHelper',
25+
'Sylius\PriceHistoryPlugin\Application\Validator\ResourceInputDataPropertiesValidatorInterface' => 'Sylius\Bundle\ApiBundle\Validator\ResourceInputDataPropertiesValidatorInterface',
26+
'Sylius\PriceHistoryPlugin\Domain\Factory\ChannelFactory' => 'Sylius\Component\Core\Factory\ChannelFactory',
27+
'Sylius\PriceHistoryPlugin\Domain\Factory\ChannelPricingLogEntryFactory' => 'Sylius\Component\Core\Factory\ChannelPricingLogEntryFactory',
28+
'Sylius\PriceHistoryPlugin\Domain\Factory\ChannelPricingLogEntryFactoryInterface' => 'Sylius\Component\Core\Factory\ChannelPricingLogEntryFactoryInterface',
29+
'Sylius\PriceHistoryPlugin\Domain\Model\ChannelInterface' => 'Sylius\Component\Core\Model\ChannelInterface',
30+
'Sylius\PriceHistoryPlugin\Domain\Model\ChannelPriceHistoryConfig' => 'Sylius\Component\Core\Model\ChannelPriceHistoryConfig',
31+
'Sylius\PriceHistoryPlugin\Domain\Model\ChannelPriceHistoryConfigInterface' => 'Sylius\Component\Core\Model\ChannelPriceHistoryConfigInterface',
32+
'Sylius\PriceHistoryPlugin\Domain\Model\ChannelPricingInterface' => 'Sylius\Component\Core\Model\ChannelPricingInterface',
33+
'Sylius\PriceHistoryPlugin\Domain\Model\ChannelPricingLogEntry' => 'Sylius\Component\Core\Model\ChannelPricingLogEntry',
34+
'Sylius\PriceHistoryPlugin\Domain\Model\ChannelPricingLogEntryInterface' => 'Sylius\Component\Core\Model\ChannelPricingLogEntryInterface',
35+
'Sylius\PriceHistoryPlugin\Domain\Model\LowestPriceBeforeDiscountAwareInterface' => 'Sylius\Component\Core\Model\ChannelPricingInterface',
36+
'Sylius\PriceHistoryPlugin\Domain\Repository\ChannelPricingLogEntryRepositoryInterface' => 'Sylius\Component\Core\Repository\ChannelPricingLogEntryRepositoryInterface',
37+
'Sylius\PriceHistoryPlugin\Infrastructure\Cli\Command\ClearPriceHistoryCommand' => 'Sylius\Bundle\CoreBundle\PriceHistory\Cli\Command\ClearPriceHistoryCommand',
38+
'Sylius\PriceHistoryPlugin\Infrastructure\Doctrine\ORM\ChannelPricingLogEntryRepository' => 'Sylius\Bundle\CoreBundle\Doctrine\ORM\ChannelPricingLogEntryRepository',
39+
'Sylius\PriceHistoryPlugin\Infrastructure\Doctrine\ORM\ChannelPricingLogEntryRepositoryInterface' => 'Sylius\Component\Core\Repository\ChannelPricingLogEntryRepositoryInterface',
40+
'Sylius\PriceHistoryPlugin\Infrastructure\EntityObserver\CreateLogEntryOnPriceChangeObserver' => 'Sylius\Bundle\CoreBundle\PriceHistory\EntityObserver\CreateLogEntryOnPriceChangeObserver',
41+
'Sylius\PriceHistoryPlugin\Infrastructure\EntityObserver\EntityObserverInterface' => 'Sylius\Bundle\CoreBundle\PriceHistory\EntityObserver\EntityObserverInterface',
42+
'Sylius\PriceHistoryPlugin\Infrastructure\EntityObserver\ProcessLowestPricesOnChannelChangeObserver' => 'Sylius\Bundle\CoreBundle\PriceHistory\EntityObserver\ProcessLowestPricesOnChannelChangeObserver',
43+
'Sylius\PriceHistoryPlugin\Infrastructure\EntityObserver\ProcessLowestPricesOnChannelPriceHistoryConfigChangeObserver' => 'Sylius\Bundle\CoreBundle\PriceHistory\EntityObserver\ProcessLowestPricesOnChannelPriceHistoryConfigChangeObserver',
44+
'Sylius\PriceHistoryPlugin\Infrastructure\Event\OldChannelPricingLogEntriesEvents' => 'Sylius\Bundle\CoreBundle\PriceHistory\Event\OldChannelPricingLogEntriesEvents',
45+
'Sylius\PriceHistoryPlugin\Infrastructure\EventListener\OnFlushEntityObserverListener' => 'Sylius\Bundle\CoreBundle\PriceHistory\EventListener\OnFlushEntityObserverListener',
46+
'Sylius\PriceHistoryPlugin\Infrastructure\EventSubscriber\ChannelPricingLogEntryEventSubscriber' => 'Sylius\Bundle\CoreBundle\PriceHistory\EventSubscriber\ChannelPricingLogEntryEventSubscriber',
47+
'Sylius\PriceHistoryPlugin\Infrastructure\Form\Extension\ChannelTypeExtension' => 'Sylius\Bundle\CoreBundle\Form\Extension\ChannelTypeExtension',
48+
'Sylius\PriceHistoryPlugin\Infrastructure\Form\Type\ChannelPriceHistoryConfigType' => 'Sylius\Bundle\CoreBundle\Form\Type\ChannelPriceHistoryConfigType',
49+
'Sylius\PriceHistoryPlugin\Infrastructure\Provider\ProductVariantsPricesProvider' => 'Sylius\Component\Core\Provider\ProductVariantsPricesProvider',
50+
'Sylius\PriceHistoryPlugin\Infrastructure\Remover\ChannelPricingLogEntriesRemover' => 'Sylius\Bundle\CoreBundle\PriceHistory\Remover\ChannelPricingLogEntriesRemover',
51+
'Sylius\PriceHistoryPlugin\Infrastructure\Serializer\ChannelDenormalizer' => 'Sylius\Bundle\ApiBundle\Serializer\ChannelDenormalizer',
52+
'Sylius\PriceHistoryPlugin\Infrastructure\Serializer\ChannelPriceHistoryConfigDenormalizer' => 'Sylius\Bundle\ApiBundle\Serializer\ChannelPriceHistoryConfigDenormalizer',
53+
'Sylius\PriceHistoryPlugin\Infrastructure\Serializer\ProductVariantNormalizer' => 'Sylius\Bundle\ApiBundle\Serializer\ProductVariantNormalizer',
54+
'Sylius\PriceHistoryPlugin\Infrastructure\Twig\PriceExtension' => 'Sylius\Bundle\CoreBundle\Twig\PriceExtension',
55+
'Sylius\PriceHistoryPlugin\Infrastructure\Twig\SyliusVersionExtension' => 'Sylius\Bundle\CoreBundle\Twig\SyliusVersionExtension',
56+
'Sylius\PriceHistoryPlugin\Infrastructure\Validator\ResourceApiInputDataPropertiesValidator' => 'Sylius\Bundle\ApiBundle\Validator\ResourceApiInputDataPropertiesValidator',
57+
]);
58+
$rectorConfig->ruleWithConfiguration(RemoveTraitUseRector::class, [
59+
'Sylius\PriceHistoryPlugin\Domain\Model\ChannelPriceHistoryConfigAwareTrait',
60+
'Sylius\PriceHistoryPlugin\Domain\Model\LowestPriceBeforeDiscountAwareTrait',
61+
]);
4762
};

tests/Set/PriceHistory/Fixture/class_renaming.php.inc

-4
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22

33
namespace Sylius\SyliusRector\Tests\Rector\Class_\AddInterfaceToClassExtendingType\Fixture;
44

5-
use Sylius\PriceHistoryPlugin\Domain\Model\ChannelPricingInterface;
6-
75
class SomeClass
86
{
97
function someFunction(\Sylius\PriceHistoryPlugin\Domain\Model\ChannelPricingInterface $someOldClass): \Sylius\PriceHistoryPlugin\Domain\Model\ChannelPricingInterface
@@ -18,8 +16,6 @@ class SomeClass
1816

1917
namespace Sylius\SyliusRector\Tests\Rector\Class_\AddInterfaceToClassExtendingType\Fixture;
2018

21-
use Sylius\Component\Core\Model\ChannelPricingInterface;
22-
2319
class SomeClass
2420
{
2521
function someFunction(\Sylius\Component\Core\Model\ChannelPricingInterface $someOldClass): \Sylius\Component\Core\Model\ChannelPricingInterface

tests/Set/PriceHistory/UpgradeSylius112WithPriceHistoryPluginToSylius113Test.php

+22-19
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,25 @@
44

55
namespace Sylius\SyliusRector\Tests\Set\PriceHistory;
66

7-
//final class UpgradeSylius112WithPriceHistoryPluginToSylius113Test extends AbstractRectorTestCase
8-
//{
9-
// /** @dataProvider provideData() */
10-
// public function test(string $file): void
11-
// {
12-
// $this->doTestFile($file);
13-
// }
14-
//
15-
// /** @return Iterator<string> */
16-
// public function provideData(): Iterator
17-
// {
18-
// return self::yieldFilesFromDirectory(__DIR__ . '/Fixture');
19-
// }
20-
//
21-
// public function provideConfigFilePath(): string
22-
// {
23-
// return __DIR__ . '/config/configured_rule.php';
24-
// }
25-
//}
7+
use Iterator;
8+
use Rector\Testing\PHPUnit\AbstractRectorTestCase;
9+
10+
final class UpgradeSylius112WithPriceHistoryPluginToSylius113Test extends AbstractRectorTestCase
11+
{
12+
/** @dataProvider provideData() */
13+
public function test(string $file): void
14+
{
15+
$this->doTestFile($file);
16+
}
17+
18+
/** @return Iterator<string> */
19+
public function provideData(): Iterator
20+
{
21+
return self::yieldFilesFromDirectory(__DIR__ . '/Fixture');
22+
}
23+
24+
public function provideConfigFilePath(): string
25+
{
26+
return __DIR__ . '/config/configured_rule.php';
27+
}
28+
}

tests/Set/PriceHistoryPlugin/PriceHistoryPluginTest.php

+22-19
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,25 @@
44

55
namespace Sylius\SyliusRector\Tests\Set\PriceHistoryPlugin;
66

7-
//final class PriceHistoryPluginTest extends AbstractRectorTestCase
8-
//{
9-
// /** @dataProvider provideData() */
10-
// public function test(string $file): void
11-
// {
12-
// $this->doTestFile($file);
13-
// }
14-
//
15-
// /** @return Iterator<string> */
16-
// public function provideData(): Iterator
17-
// {
18-
// return self::yieldFilesFromDirectory(__DIR__ . '/Fixture');
19-
// }
20-
//
21-
// public function provideConfigFilePath(): string
22-
// {
23-
// return __DIR__ . '/config/configured_rule.php';
24-
// }
25-
//}
7+
use Iterator;
8+
use Rector\Testing\PHPUnit\AbstractRectorTestCase;
9+
10+
final class PriceHistoryPluginTest extends AbstractRectorTestCase
11+
{
12+
/** @dataProvider provideData() */
13+
public function test(string $file): void
14+
{
15+
$this->doTestFile($file);
16+
}
17+
18+
/** @return Iterator<string> */
19+
public function provideData(): Iterator
20+
{
21+
return self::yieldFilesFromDirectory(__DIR__ . '/Fixture');
22+
}
23+
24+
public function provideConfigFilePath(): string
25+
{
26+
return __DIR__ . '/config/configured_rule.php';
27+
}
28+
}

0 commit comments

Comments
 (0)