protected function setUp() { $this->em = $this->getMockBuilder('Doctrine\\ORM\\EntityManager')->disableOriginalConstructor()->getMock(); $this->uow = $this->getMockBuilder('Doctrine\\ORM\\UnitOfWork')->disableOriginalConstructor()->getMock(); $this->resolver = $this->getMockBuilder('Oro\\Bundle\\EntityBundle\\ORM\\EntityClassResolver')->disableOriginalConstructor()->getMock(); $this->em->expects($this->any())->method('getUnitOfWork')->will($this->returnValue($this->uow)); $entityClass = self::TEST_ENTITY_NAME; $this->resolver->expects($this->any())->method('isEntity')->will($this->returnCallback(function ($class) use($entityClass) { return $class === $entityClass; })); $this->generator = new DoctrineTagGenerator($this->em, $this->resolver); }
public function testOwnerClassesConfig() { $this->entityClassResolver->expects($this->exactly(3))->method('getEntityClass')->will($this->returnValueMap([['AcmeBundle:Organization', 'AcmeBundle\\Entity\\Organization'], ['AcmeBundle:BusinessUnit', 'AcmeBundle\\Entity\\BusinessUnit'], ['AcmeBundle:User', 'AcmeBundle\\Entity\\User']])); $provider = new OwnershipMetadataProvider(['organization' => 'AcmeBundle:Organization', 'business_unit' => 'AcmeBundle:BusinessUnit', 'user' => 'AcmeBundle:User']); $provider->setContainer($this->container); $this->assertEquals('AcmeBundle\\Entity\\Organization', $provider->getGlobalLevelClass()); $this->assertEquals('AcmeBundle\\Entity\\Organization', $provider->getOrganizationClass()); $this->assertEquals('AcmeBundle\\Entity\\BusinessUnit', $provider->getLocalLevelClass()); $this->assertEquals('AcmeBundle\\Entity\\BusinessUnit', $provider->getBusinessUnitClass()); $this->assertEquals('AcmeBundle\\Entity\\User', $provider->getBasicLevelClass()); $this->assertEquals('AcmeBundle\\Entity\\User', $provider->getUserClass()); }
protected function setUp() { $this->configProvider = $this->getMockBuilder('Oro\\Bundle\\EntityConfigBundle\\Provider\\ConfigProvider')->disableOriginalConstructor()->getMock(); $this->securityFacade = $this->getMockBuilder('Oro\\Bundle\\SecurityBundle\\SecurityFacade')->disableOriginalConstructor()->getMock(); $this->securityConfigProvider = $this->getMock('Oro\\Bundle\\EntityConfigBundle\\Provider\\ConfigProviderInterface'); $this->entityClassResolver = $this->getMockBuilder('Oro\\Bundle\\EntityBundle\\ORM\\EntityClassResolver')->disableOriginalConstructor()->getMock(); $this->entityClassResolver->expects($this->any())->method('getEntityClass')->willReturnMap([['OroB2BAccountBundle:Account', self::LOCAL_LEVEL], ['OroB2BAccountBundle:AccountUser', self::BASIC_LEVEL], [self::LOCAL_LEVEL, self::LOCAL_LEVEL], [self::BASIC_LEVEL, self::BASIC_LEVEL]]); $this->cache = $this->getMockBuilder('Doctrine\\Common\\Cache\\CacheProvider')->setMethods(['fetch', 'save'])->getMockForAbstractClass(); $this->container = $this->getMock('Symfony\\Component\\DependencyInjection\\ContainerInterface'); $this->container->expects($this->any())->method('get')->will($this->returnValueMap([['oro_entity_config.provider.ownership', ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE, $this->configProvider], ['orob2b_account.owner.frontend_ownership_metadata_provider.cache', ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE, $this->cache], ['oro_entity.orm.entity_class_resolver', ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE, $this->entityClassResolver], ['oro_security.security_facade', ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE, $this->securityFacade], ['oro_entity_config.provider.security', ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE, $this->securityConfigProvider]])); $this->provider = new FrontendOwnershipMetadataProvider(['local_level' => self::LOCAL_LEVEL, 'basic_level' => self::BASIC_LEVEL]); $this->provider->setContainer($this->container); }
/** * @param string $entityName * @param bool $isEntity * @param bool $isException * @param bool $isAlreadyConfigured * @param bool $isActionEnabled * @param array|null $expected * * @dataProvider onBuildBeforeProvider */ public function testOnBuildBefore($entityName, $isEntity, $isException, $isAlreadyConfigured, $isActionEnabled, $expected = null) { $datagrid = $this->getDatagrid($entityName, $isAlreadyConfigured); // prepare mocks if ($isException) { $this->classResolverMock->expects($this->once())->method('isEntity')->with($entityName)->will($this->throwException(new \ReflectionException("Not valid class"))); } else { $this->classResolverMock->expects($this->once())->method('isEntity')->with($entityName)->will($this->returnValue($isEntity)); if ($isEntity && !$isAlreadyConfigured && $isActionEnabled) { $this->doctrineHelperMock->expects($this->once())->method('getSingleEntityIdentifierFieldName')->will($this->returnValue('id')); } $isEmptyAndEnabled = !$isAlreadyConfigured && $isEntity; $this->handlerMock->expects($isEmptyAndEnabled ? $this->once() : $this->never())->method('isMassActionEnabled')->with($entityName)->will($this->returnValue($isActionEnabled)); } $event = new BuildBefore($datagrid, $datagrid->getConfig()); $this->listener->onBuildBefore($event); $this->assertEquals($expected, $event->getConfig()->offsetGetByPath(sprintf(GridListener::ACTION_CONFIGURATION_KEY, MassUpdateActionHandler::ACTION_NAME)), 'Failed asserting that mass action config added by listener'); }
protected function setUp() { $this->entityConfigProvider = $this->getMockBuilder('Oro\\Bundle\\EntityConfigBundle\\Provider\\ConfigProvider')->disableOriginalConstructor()->getMock(); $this->extendConfigProvider = $this->getMockBuilder('Oro\\Bundle\\EntityConfigBundle\\Provider\\ConfigProvider')->disableOriginalConstructor()->getMock(); $this->entityClassResolver = $this->getMockBuilder('Oro\\Bundle\\EntityBundle\\ORM\\EntityClassResolver')->disableOriginalConstructor()->getMock(); $this->entityClassResolver->expects($this->any())->method('getEntityClass')->will($this->returnCallback(function ($entityName) { return str_replace(':', '\\Entity\\', $entityName); })); $this->translator = $this->getMockBuilder('Symfony\\Component\\Translation\\Translator')->disableOriginalConstructor()->getMock(); $this->translator->expects($this->any())->method('trans')->will($this->returnArgument(0)); $this->exclusionProvider = $this->getMock('Oro\\Bundle\\EntityBundle\\Provider\\ExclusionProviderInterface'); $this->entityProvider = new EntityProvider($this->entityConfigProvider, $this->extendConfigProvider, $this->entityClassResolver, $this->translator); $this->entityProvider->setExclusionProvider($this->exclusionProvider); $this->doctrine = $this->getMockBuilder('Symfony\\Bridge\\Doctrine\\ManagerRegistry')->disableOriginalConstructor()->getMock(); $this->virtualFieldProvider = $this->getMock('Oro\\Bundle\\EntityBundle\\Provider\\VirtualFieldProviderInterface'); $this->virtualRelationProvider = $this->getMock('Oro\\Bundle\\EntityBundle\\Provider\\VirtualRelationProviderInterface'); $this->provider = new EntityFieldProvider($this->entityConfigProvider, $this->extendConfigProvider, $this->entityClassResolver, new FieldTypeHelper([]), $this->doctrine, $this->translator, []); $this->provider->setEntityProvider($this->entityProvider); $this->provider->setVirtualFieldProvider($this->virtualFieldProvider); $this->provider->setVirtualRelationProvider($this->virtualRelationProvider); $this->provider->setExclusionProvider($this->exclusionProvider); }