/** * @covers \Ilios\CoreBundle\Entity\Manager\PermissionManager::userHasReadPermissionToCourse */ public function testUserHasReadPermissionToCourse() { $user = new User(); $user->setId(10); $course = new Course(); $course->setId(100); $class = 'Ilios\\CoreBundle\\Entity\\Permission'; $em = m::mock('Doctrine\\ORM\\EntityManager'); $repository = m::mock('Doctrine\\ORM\\Repository')->shouldReceive('findOneBy')->with(['tableRowId' => 100, 'tableName' => 'course', 'canRead' => true, 'user' => $user], null)->andReturn(new Permission())->mock(); $registry = m::mock('Doctrine\\Bundle\\DoctrineBundle\\Registry')->shouldReceive('getManagerForClass')->andReturn($em)->shouldReceive('getRepository')->andReturn($repository)->mock(); $manager = new PermissionManager($registry, $class); $this->assertTrue($manager->userHasReadPermissionToCourse($user, $course->getId())); $this->assertFalse($manager->userHasReadPermissionToCourse($user, null)); }