protected function setUp() { $this->container = new Container(); $this->container->set('doctrine.orm.entity_manager', EntityManager::create(array('driver' => 'pdo_sqlite', 'memory' => true), Setup::createAnnotationMetadataConfiguration(array()))); $this->bundle = new DateIntervalBundle(); $this->bundle->setContainer($this->container); }
/** * Get an EntityManager * @return EntityManager */ public function getEntityManager() { if ($this->em === null) { $this->setEntityManager($this->container->get('doctrine')->getManager($this->emName)); } return $this->em; }
/** * Mock the controller. * * @return \PHPUnit_Framework_MockObject_MockObject|PackageController */ private function prepareController() { $manager = $this->getMockBuilder(RepositoryManager::class)->disableOriginalConstructor()->setMethods(null)->getMock(); $config = new Config(); $config->merge(array('repositories' => array('packagist' => false))); $loader = new RootPackageLoader($manager, $config); $rootPackage = $loader->load(json_decode($this->readFixture('composer.json'), true)); $loader = new ArrayLoader(); $json = json_decode($this->readFixture('installed.json'), true); $packages = []; foreach ($json as $package) { $packages[] = $loader->load($package); } $manager->setLocalRepository(new WritableArrayRepository($packages)); $composer = $this->getMockBuilder(Composer::class)->setMethods(['getPackage', 'getRepositoryManager'])->getMock(); $composer->method('getPackage')->willReturn($rootPackage); $composer->method('getRepositoryManager')->willReturn($manager); $controller = $this->getMockBuilder(PackageController::class)->setMethods(['getComposer', 'forward'])->getMock(); $controller->method('getComposer')->willReturn($composer); $home = $this->getMock(HomePathDeterminator::class, ['homeDir']); $home->method('homeDir')->willReturn($this->getTempDir()); $composerJson = $this->provideFixture('composer.json'); $this->provideFixture('composer.lock'); $this->provideFixture('installed.json', 'vendor/composer/installed.json'); $container = new Container(); $container->set('tenside.home', $home); $container->set('tenside.composer_json', new ComposerJson($composerJson)); /** @var PackageController $controller */ $controller->setContainer($container); return $controller; }
/** * Loads the config */ private function loadConfig() { $directories = [BASE_DIR . '/config', '/etc/blackhole-bot/']; $locator = new FileLocator($directories); $loader = new YamlConfigLoader($locator); $this->container->set('config', (new Processor())->processConfiguration($this, $loader->load($locator->locate('blackhole.yml')))); }
public function warmUp($cacheDir) { // we need the directory no matter the hydrator cache generation strategy. $hydratorCacheDir = $this->container->getParameter('doctrine.odm.mongodb.hydrator_dir'); if (!file_exists($hydratorCacheDir)) { if (false === @mkdir($hydratorCacheDir, 0777, true)) { throw new \RuntimeException(sprintf('Unable to create the Doctrine Hydrator directory (%s)', dirname($hydratorCacheDir))); } } else { if (!is_writable($hydratorCacheDir)) { throw new \RuntimeException(sprintf('Doctrine Hydrator directory (%s) is not writeable for the current system user.', $hydratorCacheDir)); } } // if hydrators are autogenerated we don't need to generate them in the cache warmer. if ($this->container->getParameter('doctrine.odm.mongodb.auto_generate_hydrator_classes') === true) { return; } $documentManagers = $this->container->getParameter('doctrine.odm.mongodb.document_managers'); foreach ($documentManagers as $documentManagerName) { $dm = $this->container->get(sprintf('doctrine.odm.mongodb.%s_document_manager', $documentManagerName)); /* @var $dm Doctrine\ODM\MongoDB\DocumentManager */ $classes = $dm->getMetadataFactory()->getAllMetadata(); $dm->getHydratorFactory()->generateHydratorClasses($classes); } }
protected function setUp() { $this->securityFacade = $this->getMockBuilder('Oro\\Bundle\\SecurityBundle\\SecurityFacade')->disableOriginalConstructor()->setMethods(['isGranted'])->getMock(); $this->container = $this->getMockBuilder('Symfony\\Component\\DependencyInjection\\Container')->setMethods(['get'])->getMock(); $this->container->expects($this->any())->method('get')->with('oro_security.security_facade')->willReturn($this->securityFacade); $this->emailVoter = new EmailVoter($this->container); }
private function doFilter(AssetInterface $asset) { $content = $asset->getContent(); $callback = function ($matches) { $fs = new Filesystem(); $resource = $matches['resource']; preg_match("/(\\@{1,2})([A-Z][A-Za-z0-9\\_\\-]*)/", $resource, $matches); if ($resource[1] == "@") { $resource = substr($resource, 1); } try { $bundle = $this->container->get('kernel')->getBundle($matches[2]); $path = $this->container->get('kernel')->locateResource($resource); if ($fs->exists($path)) { if (preg_match("/Resources\\/public\\/(.*)/", $path, $matches2)) { $path = 'bundles/' . preg_replace('/bundle$/', '', strtolower($bundle->getName())) . '/' . $matches2[1]; if ($matches[1] == "@@") { return $this->container->get('kernel')->getRootDir() . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'web' . DIRECTORY_SEPARATOR . $path; } try { return $this->container->get('templating.helper.assets')->getUrl($path); } catch (InactiveScopeException $e) { return "../" . $path; } } } } catch (Exception $e) { } return $resource; }; $pattern = "/(?P<resource>\\@{1,2}[A-Za-z\\_]+Bundle[A-Za-z0-9\\_\\.\\/\\-]*)/"; $asset->setContent(preg_replace_callback($pattern, $callback, $content)); }
/** * Get entity for storage users * * @return \Doctrine\ORM\EntityRepository|null */ public function getRepository() { if ($this->entity) { return $this->container->get('doctrine.orm.entity_manager')->getRepository($this->entity); } return null; }
public function dump(AssetInterface $asset) { $writer = new \Assetic\AssetWriter(sys_get_temp_dir(), $this->container->getParameter('assetic.variables')); $ref = new \ReflectionMethod($writer, 'getCombinations'); $ref->setAccessible(true); $name = $asset->getSourcePath(); $type = substr($name, strrpos($name, '.') + 1); switch ($type) { case 'coffee': $asset->ensureFilter($this->container->get('assetic.filter.coffee')); $type = 'js'; break; case 'less': $asset->ensureFilter($this->container->get('assetic.filter.less')); $type = 'css'; break; } $combinations = $ref->invoke($writer, $asset->getVars()); $asset->setValues($combinations[0]); $asset->load(); $content = $asset->getContent(); // because the assetic cssrewrite makes bullshit here, we need to reimplement the filter if ($type === 'css') { $content = $this->cssFilter($content, '/' . dirname($asset->getSourcePath())); } return $content; }
public function setUp() { $container = new Container(); $container->set('api_validator.decoder.json', new JsonDecoder()); $this->decoderProvider = new DecoderProvider(array('json' => 'api_validator.decoder.json')); $this->decoderProvider->setContainer($container); }
/** * postLoad Callback for Page entity, gets all defined PageHooks and calls it * @param Page $page * @param LifecycleEventArgs $args */ public function postLoad(Page $page, LifecycleEventArgs $args) { $hookManager = $this->container->get('mm_cmf_content.page_hook_manager'); foreach ($hookManager->getHooks() as $hook) { $hook->process($page, $this->container->get('request')); } }
/** * Renders jwplayer * * @param MediaInterface $media * @param array $options * * @return string */ public function renderMedia(MediaInterface $media, array $options = array()) { $defaultOptions = $this->container->getParameter('thrace_media.jwplayer.options'); $configs = array('key' => $defaultOptions['key'], 'html5player' => $defaultOptions['html5player'], 'flashplayer' => $defaultOptions['flashplayer'], 'type' => $media->getType(), 'id' => uniqid('thrace_media', true), 'file' => $this->container->get('router')->generate('thrace_media_render', array('name' => $media->getMediaPath(), 'hash' => $media->getHash()), true)); $configs = array_replace_recursive($configs, $options); return $this->container->get('templating')->render('ThraceMediaBundle:Media:media.html.twig', array('media' => $media, 'configs' => $configs)); }
/** * Get a secure token for reCAPTCHA so we aren't restricted to a specific domain... * @see https://developers.google.com/recaptcha/docs/secure_token * * @return string */ public function getRecaptchaSecureToken() { $public_key = $this->container->getParameter('recaptcha.public_key'); $private_key = $this->container->getParameter('recaptcha.private_key'); $recaptchaToken = new ReCaptchaToken(array('site_key' => $public_key, 'site_secret' => $private_key)); return $recaptchaToken->secureToken(uniqid('recaptcha')); }
public function test_config_values_passed_to_datatable_instance() { $config = new Config(); $config->setId('some_key'); $config->setEntityName('EntityName'); $config->setEntityAlias('en'); $config->setFields(['k' => 'v']); $config->setRenderers(['k1' => 'v1']); $config->setWhere('where = :yes'); $config->setWhereParams(['k3' => 'v3']); $config->setOrderField('Order'); $config->setOrderDirection('ASC'); $config->setAction(true); $config->setSearch(false); $config->setSearchFields(['k2' => 'v2']); $config->setJoins([['field' => 'F', 'alias' => 'a', 'type' => 'T'], ['field' => 'F1', 'alias' => 'a1', 'type' => 'T1']]); $datatableProphecy = $this->prophesize('\\RP\\DatatableBundle\\Util\\Datatable'); $datatable = $datatableProphecy->reveal(); $datatableProphecy->setEntity('EntityName', 'en')->willReturn($datatable)->shouldBeCalledTimes(1); $datatableProphecy->setFields(['k' => 'v'])->willReturn($datatable)->shouldBeCalledTimes(1); $datatableProphecy->setRenderers(['k1' => 'v1'])->willReturn($datatable)->shouldBeCalledTimes(1); $datatableProphecy->setWhere('where = :yes', ['k3' => 'v3'])->willReturn($datatable)->shouldBeCalledTimes(1); $datatableProphecy->setOrder('Order', 'ASC')->willReturn($datatable)->shouldBeCalledTimes(1); $datatableProphecy->setHasAction(true)->willReturn($datatable)->shouldBeCalledTimes(1); $datatableProphecy->setSearch(false)->willReturn($datatable)->shouldBeCalledTimes(1); $datatableProphecy->setSearchFields(['k2' => 'v2'])->willReturn($datatable)->shouldBeCalledTimes(1); $datatableProphecy->addJoin('F', 'a', 'T')->willReturn($datatable)->shouldBeCalledTimes(1); $datatableProphecy->addJoin('F1', 'a1', 'T1')->willReturn($datatable)->shouldBeCalledTimes(1); $container = new Container(); $container->set('datatable', $datatable); $factory = new Factory(); $factory->setContainer($container); $this->assertEquals($datatable, $factory->create($config)); }
public function register(Container $container) { $container["data_collectors.swiftmailer.message_logger"] = function () { return new \Swift_Plugins_MessageLogger(); }; $container["data_collectors.swiftmailer.collector_container"] = function (Container $app) { $container = new SymfonyContainer(); $container->setParameter("swiftmailer.mailers", ["default" => $app["swiftmailer.options"]]); $container->setParameter("swiftmailer.default_mailer", "default"); $container->setParameter("swiftmailer.mailer.default.spool.enabled", $app["swiftmailer.use_spool"]); $container->set("swiftmailer.mailer.default.plugin.messagelogger", $app["data_collectors.swiftmailer.message_logger"]); return $container; }; $container->extend('mailer', function (\Swift_Mailer $mailer, Container $container) { $mailer->registerPlugin($container['data_collectors.swiftmailer.message_logger']); return $mailer; }); $container->extend('data_collectors', function (array $collectors, Container $container) { $collectors['swiftmailer'] = function ($container) { return new MessageDataCollector($container["data_collectors.swiftmailer.collector_container"]); }; return $collectors; }); $container->extend('data_collector.templates', function ($templates) { $templates[] = ['swiftmailer', '@Swiftmailer/Collector/swiftmailer.html.twig']; return $templates; }); $container->extend('twig.loader.filesystem', function (\Twig_Loader_Filesystem $loader) { $loader->addPath(dirname(dirname((new \ReflectionClass(MessageDataCollector::class))->getFileName())) . '/Resources/views', 'Swiftmailer'); return $loader; }); }
/** * __construct function. * * @access public * @param Container $container */ public function __construct(Container $container) { // Getting all symfony parameters $this->parameters = $container->getParameterBag()->all(); // Getting all parameters keys $this->keys = array_keys($this->parameters); }
/** * FormFactory constructor. * @param Container $container */ public function __construct(Container $container) { # configuring the form factory $this->formFactory = Forms::createFormFactoryBuilder()->addExtension(new DoctrineOrmExtension(new ExtendedEntityManager($container->get('models'))))->addExtension(new ValidatorExtension(Validation::createValidator()))->getFormFactory(); # registering all necessary smarty plugins new SmartyPlugins($this->getFormHelper(), $container->get('template')); }
/** * @param EntityManager $entityManager */ public function __construct(EntityManager $entityManager, Container $container) { $this->em = $entityManager; $this->qb = $entityManager->createQueryBuilder(); $this->mailer = $container->get('mailer'); $this->templating = $container->get('templating'); }
public static function getIndexManager(Container $container = null, $vertical) { if ($vertical != '') { return $container->get('rmc_' . $vertical . '.post_solr_service'); } return NULL; }
/** * Sets the signal handlers that we use during execution */ private function setSignalHandlers() { $this->container->get('logger')->debug('Setting signal handlers'); pcntl_signal(SIGTERM, [$this, 'signalHandler']); pcntl_signal(SIGINT, [$this, 'signalHandler']); pcntl_signal(SIGHUP, [$this, 'signalHandler']); }
protected function setUp() { $this->em = $this->getMockBuilder('Doctrine\\ORM\\EntityManager')->disableOriginalConstructor()->getMock(); $translator = $this->getMock('Symfony\\Component\\Translation\\TranslatorInterface'); $translator->expects($this->any())->method('trans')->will($this->returnArgument(0)); $registry = $this->getMockForAbstractClass('Doctrine\\Common\\Persistence\\ManagerRegistry', [], '', false); $registry->expects($this->any())->method('getManagerForClass')->will($this->returnValue($this->em)); $this->formFactory = Forms::createFormFactoryBuilder()->addExtensions([new PreloadedExtension(['oro_type_filter' => new FilterType($translator), 'oro_type_choice_filter' => new ChoiceFilterType($translator), 'entity' => new EntityType($registry), 'oro_type_entity_filter' => new EntityFilterType($translator)], []), new CsrfExtension($this->getMock('Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\CsrfProviderInterface'))])->getFormFactory(); $classMetaData = $this->getMockBuilder('Doctrine\\ORM\\Mapping\\ClassMetadata')->disableOriginalConstructor()->getMock(); $classMetaData->expects($this->any())->method('getName')->will($this->returnValue('OroSegment:Segment')); $classMetaData->expects($this->any())->method('getIdentifier')->will($this->returnValue(['id'])); $this->em->expects($this->any())->method('getClassMetadata')->will($this->returnValue($classMetaData)); $this->dynamicSegmentQueryBuilder = $this->getMockBuilder('Oro\\Bundle\\SegmentBundle\\Query\\DynamicSegmentQueryBuilder')->disableOriginalConstructor()->getMock(); $this->staticSegmentQueryBuilder = $this->getMockBuilder('Oro\\Bundle\\SegmentBundle\\Query\\StaticSegmentQueryBuilder')->disableOriginalConstructor()->getMock(); $this->entityNameProvider = $this->getMock('Oro\\Bundle\\SegmentBundle\\Provider\\EntityNameProvider'); $this->entityNameProvider->expects($this->any())->method('getEntityName')->will($this->returnValue('Namespace\\Entity')); $this->entityConfigProvider = $this->getMockBuilder('Oro\\Bundle\\EntityConfigBundle\\Provider\\ConfigProvider')->disableOriginalConstructor()->getMock(); $this->extendConfigProvider = $this->getMockBuilder('Oro\\Bundle\\EntityConfigBundle\\Provider\\ConfigProvider')->disableOriginalConstructor()->getMock(); $configManager = $this->getMockBuilder('Oro\\Bundle\\EntityConfigBundle\\Config\\ConfigManager')->disableOriginalConstructor()->getMock(); $this->entityConfigProvider->expects($this->any())->method('getConfigManager')->will($this->returnValue($configManager)); $configManager->expects($this->any())->method('getEntityManager')->will($this->returnValue($this->em)); $staticQBServiceID = uniqid('static'); $dynamicQBServiceID = uniqid('dynamic'); $container = new Container(); $container->set($staticQBServiceID, $this->staticSegmentQueryBuilder); $container->set($dynamicQBServiceID, $this->dynamicSegmentQueryBuilder); $this->filter = new SegmentFilter($this->formFactory, new FilterUtility(), new ServiceLink($container, $dynamicQBServiceID), new ServiceLink($container, $staticQBServiceID), $this->entityNameProvider, $this->entityConfigProvider, $this->extendConfigProvider); $this->filter->init('segment', ['entity' => '']); }
public function createContainer($client, $handler) { $container = new Container(); $container->set('gbprod.elasticsearch_extra.put_index_mappings_handler', $handler); $container->set('m6web_elasticsearch.client.my_client', $client); return $container; }
public function __invoke() { $token = $this->container->get('security.context')->getToken(); if (null !== $token) { return $token->getUser(); } }
public function execute(InputInterface $input, OutputInterface $output) { $this->container = $this->getContainer(); $this->assetic = $this->container->get('assetic.asset_manager'); $files = array(); foreach ($this->assetic->getNames() as $name) { $asset = $this->assetic->get($name); $group = array(); foreach ($asset as $assetPart) { $absPath = realpath($assetPart->getSourceRoot() . '/' . $assetPart->getSourcePath()); if ($absPath === false) { continue; } $group[] = $assetPart->getTargetPath(); $files[$assetPart->getTargetPath()] = $absPath; } $files[$asset->getTargetPath()] = $group; } switch ($input->getArgument('format')) { case 'json': $output->write(json_encode($files)); break; default: $output->write(var_export($files, true)); break; } }
/** * Execute the next task on the queue * * @param string $queue * @param int $timeout * @throws \Exception * @throws \mcfedr\Queue\JobManagerBundle\Exception\UnrecoverableException * @throws \mcfedr\Queue\JobManagerBundle\Exception\ExecuteException */ public function execute($queue = null, $timeout = null) { $job = $this->manager->get($queue, $timeout); if (!$job) { return; } $task = json_decode($job->getData(), true); $this->logger->info('Got task', ['task' => $task['name'], 'options' => $task['options']]); try { /** @var Worker $worker */ $worker = $this->container->get($task['name']); foreach ($this->preListeners as $listener) { $listener->preTask($worker, $task['options']); } $worker->execute($task['options']); foreach ($this->postListeners as $listener) { $listener->postTask($worker, $task['options']); } $this->manager->delete($job); } catch (ServiceNotFoundException $e) { $this->manager->delete($job); $throw = new UnrecoverableException("Service for job not found", 0, $e); $throw->setJob($job); throw $throw; } catch (UnrecoverableException $e) { $this->manager->delete($job); $e->setJob($job); throw $e; } catch (\Exception $e) { throw new ExecuteException($job, $e); } }
public function param($key) { if ($this->container->hasParameter($key)) { return $this->container->getParameter($key); } throw new Exception("Brak parametru w parameters.yml o nazwie '" . $key . "'"); }
public function __construct(Container $container, AnnotationHandler $annotationHandler, $annotationClassName) { $this->container = $container; $this->annotationHandler = $annotationHandler; $this->annotationClassName = $annotationClassName; $this->reader = $container->get('annotation_reader'); }
/** * @test */ public function shouldExecuteNotifyRequestOnDoUnsafe() { $request = Request::create('/'); $request->query->set('payment_name', 'thePaymentName'); $paymentMock = $this->getMock('Payum\Core\PaymentInterface'); $paymentMock ->expects($this->once()) ->method('execute') ->with($this->isInstanceOf('Payum\Core\Request\Notify')) ; $registryMock = $this->getMock('Payum\Core\Registry\RegistryInterface'); $registryMock ->expects($this->once()) ->method('getPayment') ->with('thePaymentName') ->will($this->returnValue($paymentMock)) ; $container = new Container; $container->set('payum', $registryMock); $controller = new NotifyController; $controller->setContainer($container); $response = $controller->doUnsafeAction($request); $this->assertInstanceOf('Symfony\Component\HttpFoundation\Response', $response); $this->assertEquals(204, $response->getStatusCode()); $this->assertEquals('', $response->getContent()); }
/** * @param $crudServiceName * @param CrudController $controller * @throws ConfigException */ private function registerCrudInController($crudServiceName, CrudController $controller) { if (!($crud = $this->container->get($crudServiceName))) { throw new ConfigException(sprintf('Crud service with name %s not found in service container.', $crudServiceName)); } $controller->initAsCrudController($crud); }
public function warmUp($cacheDir) { // we need the directory no matter the proxy cache generation strategy. $proxyCacheDir = $this->container->getParameter('doctrine.orm.proxy_dir'); if (!file_exists($proxyCacheDir)) { if (false === @mkdir($proxyCacheDir, 0777, true)) { throw new \RuntimeException(sprintf('Unable to create the Doctrine Proxy directory (%s)', dirname($proxyCacheDir))); } } else { if (!is_writable($proxyCacheDir)) { throw new \RuntimeException(sprintf('Doctrine Proxy directory (%s) is not writeable for the current system user.', $proxyCacheDir)); } } // if proxys are autogenerated we don't need to generate them in the cache warmer. if ($this->container->getParameter('doctrine.orm.auto_generate_proxy_classes') === true) { return; } $entityManagers = $this->container->getParameter('doctrine.orm.entity_managers'); foreach ($entityManagers as $entityManagerName) { $em = $this->container->get(sprintf('doctrine.orm.%s_entity_manager', $entityManagerName)); /* @var $em Doctrine\ORM\EntityManager */ $classes = $em->getMetadataFactory()->getAllMetadata(); $em->getProxyFactory()->generateProxyClasses($classes); } }