/** * @dataProvider voteProvider */ public function testVote(Attribute $attribute, $repositoryCanUser, $expectedResult) { $voter = new ValueObjectVoter($this->repository); $targets = isset($attribute->limitations['targets']) ? $attribute->limitations['targets'] : null; $this->repository->expects($this->once())->method('canUser')->with($attribute->module, $attribute->function, $attribute->limitations['valueObject'], $targets)->will($this->returnValue($repositoryCanUser)); $this->assertSame($expectedResult, $voter->vote($this->getMock('Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface'), new \stdClass(), array($attribute))); }