/** * @dataProvider supportsDataProvider * * @param mixed $id * @param string $type * @param string $class * @param bool $isEntity * @param bool $expected */ public function testSupports($id, $type, $class, $isEntity, $expected) { /** @var \PHPUnit_Framework_MockObject_MockObject|EntityClassResolver $entityClassResolverMock */ $entityClassResolverMock = $this->getMockBuilder('Oro\\Bundle\\EntityBundle\\ORM\\EntityClassResolver')->disableOriginalConstructor()->getMock(); $entityClassResolverMock->expects($isEntity ? $this->once() : $this->never())->method('getEntityClass')->with($class)->willReturn($class); $entityClassResolverMock->expects($this->once())->method('isEntity')->with($class)->willReturn($expected); /** @var \PHPUnit_Framework_MockObject_MockObject|EntitySecurityMetadataProvider $entityMetadataProvider */ $entityMetadataProvider = $this->getMockBuilder('Oro\\Bundle\\SecurityBundle\\Metadata\\EntitySecurityMetadataProvider')->disableOriginalConstructor()->getMock(); $extension = new EntityAclExtension(new ObjectIdAccessor(), $entityClassResolverMock, $entityMetadataProvider, $this->metadataProvider, $this->decisionMaker); $this->assertEquals($expected, $extension->supports($type, $id)); }