1
0
Fork 0
mirror of https://github.com/wallabag/wallabag.git synced 2025-09-15 18:57:05 +00:00

Stop using ContainerAwareInterface in fixtures

This commit is contained in:
Yassine Guedidi 2025-01-18 14:16:49 +01:00
parent 0d70b91597
commit ed803e0d0e
4 changed files with 22 additions and 34 deletions

View file

@ -6,6 +6,9 @@ services:
# fixtures # fixtures
Wallabag\DataFixtures\: Wallabag\DataFixtures\:
bind:
$defaultIgnoreOriginInstanceRules: '%wallabag.default_ignore_origin_instance_rules%'
$defaultInternalSettings: '%wallabag.default_internal_settings%'
resource: '../../fixtures/*' resource: '../../fixtures/*'
tags: ['doctrine.fixture.orm'] tags: ['doctrine.fixture.orm']
autowire: true autowire: true

View file

@ -4,27 +4,22 @@ namespace Wallabag\DataFixtures;
use Doctrine\Bundle\FixturesBundle\Fixture; use Doctrine\Bundle\FixturesBundle\Fixture;
use Doctrine\Persistence\ObjectManager; use Doctrine\Persistence\ObjectManager;
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Wallabag\Entity\IgnoreOriginInstanceRule; use Wallabag\Entity\IgnoreOriginInstanceRule;
class IgnoreOriginInstanceRuleFixtures extends Fixture implements ContainerAwareInterface class IgnoreOriginInstanceRuleFixtures extends Fixture
{ {
/** private array $defaultIgnoreOriginInstanceRules;
* @var ContainerInterface
*/
private $container;
public function setContainer(?ContainerInterface $container = null) public function __construct(array $defaultIgnoreOriginInstanceRules)
{ {
$this->container = $container; $this->defaultIgnoreOriginInstanceRules = $defaultIgnoreOriginInstanceRules;
} }
public function load(ObjectManager $manager): void public function load(ObjectManager $manager): void
{ {
foreach ($this->container->getParameter('wallabag.default_ignore_origin_instance_rules') as $ignore_origin_instance_rule) { foreach ($this->defaultIgnoreOriginInstanceRules as $ignoreOriginInstanceRule) {
$newIgnoreOriginInstanceRule = new IgnoreOriginInstanceRule(); $newIgnoreOriginInstanceRule = new IgnoreOriginInstanceRule();
$newIgnoreOriginInstanceRule->setRule($ignore_origin_instance_rule['rule']); $newIgnoreOriginInstanceRule->setRule($ignoreOriginInstanceRule['rule']);
$manager->persist($newIgnoreOriginInstanceRule); $manager->persist($newIgnoreOriginInstanceRule);
} }

View file

@ -4,25 +4,20 @@ namespace Wallabag\DataFixtures;
use Doctrine\Bundle\FixturesBundle\Fixture; use Doctrine\Bundle\FixturesBundle\Fixture;
use Doctrine\Persistence\ObjectManager; use Doctrine\Persistence\ObjectManager;
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Wallabag\Entity\InternalSetting; use Wallabag\Entity\InternalSetting;
class InternalSettingFixtures extends Fixture implements ContainerAwareInterface class InternalSettingFixtures extends Fixture
{ {
/** private array $defaultInternalSettings;
* @var ContainerInterface
*/
private $container;
public function setContainer(?ContainerInterface $container = null) public function __construct(array $defaultInternalSettings)
{ {
$this->container = $container; $this->defaultInternalSettings = $defaultInternalSettings;
} }
public function load(ObjectManager $manager): void public function load(ObjectManager $manager): void
{ {
foreach ($this->container->getParameter('wallabag.default_internal_settings') as $setting) { foreach ($this->defaultInternalSettings as $setting) {
$newSetting = new InternalSetting(); $newSetting = new InternalSetting();
$newSetting->setName($setting['name']); $newSetting->setName($setting['name']);
$newSetting->setValue($setting['value']); $newSetting->setValue($setting['value']);

View file

@ -5,37 +5,32 @@ namespace Wallabag\DataFixtures;
use Doctrine\Bundle\FixturesBundle\Fixture; use Doctrine\Bundle\FixturesBundle\Fixture;
use Doctrine\Common\DataFixtures\DependentFixtureInterface; use Doctrine\Common\DataFixtures\DependentFixtureInterface;
use Doctrine\Persistence\ObjectManager; use Doctrine\Persistence\ObjectManager;
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Wallabag\Entity\SiteCredential; use Wallabag\Entity\SiteCredential;
use Wallabag\Entity\User; use Wallabag\Entity\User;
use Wallabag\Helper\CryptoProxy; use Wallabag\Helper\CryptoProxy;
class SiteCredentialFixtures extends Fixture implements DependentFixtureInterface, ContainerAwareInterface class SiteCredentialFixtures extends Fixture implements DependentFixtureInterface
{ {
/** private CryptoProxy $cryptoProxy;
* @var ContainerInterface
*/
private $container;
public function setContainer(?ContainerInterface $container = null) public function __construct(CryptoProxy $cryptoProxy)
{ {
$this->container = $container; $this->cryptoProxy = $cryptoProxy;
} }
public function load(ObjectManager $manager): void public function load(ObjectManager $manager): void
{ {
$credential = new SiteCredential($this->getReference('admin-user', User::class)); $credential = new SiteCredential($this->getReference('admin-user', User::class));
$credential->setHost('.super.com'); $credential->setHost('.super.com');
$credential->setUsername($this->container->get(CryptoProxy::class)->crypt('.super')); $credential->setUsername($this->cryptoProxy->crypt('.super'));
$credential->setPassword($this->container->get(CryptoProxy::class)->crypt('bar')); $credential->setPassword($this->cryptoProxy->crypt('bar'));
$manager->persist($credential); $manager->persist($credential);
$credential = new SiteCredential($this->getReference('admin-user', User::class)); $credential = new SiteCredential($this->getReference('admin-user', User::class));
$credential->setHost('paywall.example.com'); $credential->setHost('paywall.example.com');
$credential->setUsername($this->container->get(CryptoProxy::class)->crypt('paywall.example')); $credential->setUsername($this->cryptoProxy->crypt('paywall.example'));
$credential->setPassword($this->container->get(CryptoProxy::class)->crypt('bar')); $credential->setPassword($this->cryptoProxy->crypt('bar'));
$manager->persist($credential); $manager->persist($credential);