mirror of
				https://github.com/kevinveenbirkenbach/infinito.git
				synced 2025-11-04 03:07:58 +00:00 
			
		
		
		
	Added grant to all function to RightChecker and LawPermissionChecker
This commit is contained in:
		@@ -23,6 +23,7 @@ class RecieverAttributTest extends TestCase
 | 
			
		||||
 | 
			
		||||
    public function testConstructor(): void
 | 
			
		||||
    {
 | 
			
		||||
        $this->assertFalse($this->reciever->hasReciever());
 | 
			
		||||
        $this->expectException(\TypeError::class);
 | 
			
		||||
        $this->reciever->getReciever();
 | 
			
		||||
    }
 | 
			
		||||
@@ -30,7 +31,9 @@ class RecieverAttributTest extends TestCase
 | 
			
		||||
    public function testAccessors(): void
 | 
			
		||||
    {
 | 
			
		||||
        $reciever = $this->createMock(AbstractSource::class);
 | 
			
		||||
        $this->assertFalse($this->reciever->hasReciever());
 | 
			
		||||
        $this->assertNull($this->reciever->setReciever($reciever));
 | 
			
		||||
        $this->assertEquals($reciever, $this->reciever->getReciever());
 | 
			
		||||
        $this->assertTrue($this->reciever->hasReciever());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -203,4 +203,24 @@ class LawPermissionCheckerTest extends TestCase
 | 
			
		||||
        $this->law->setGrant(true);
 | 
			
		||||
        $this->assertTrue($this->checkClientPermission());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public function testAppliesToAll(): void
 | 
			
		||||
    {
 | 
			
		||||
        $clientSource = new PureSource();
 | 
			
		||||
        $clientRight = new Right();
 | 
			
		||||
        $clientRight->setLayer(LayerType::SOURCE);
 | 
			
		||||
        $clientRight->setCrud(CRUDType::READ);
 | 
			
		||||
        $clientRight->setSource($this->source);
 | 
			
		||||
        $clientRight->setReciever($clientSource);
 | 
			
		||||
        $this->assertFalse($this->lawPermissionChecker->hasPermission($clientRight));
 | 
			
		||||
        $right = new Right();
 | 
			
		||||
        $right->setLayer(LayerType::SOURCE);
 | 
			
		||||
        $right->setCrud(CRUDType::READ);
 | 
			
		||||
        $right->setSource($this->source);
 | 
			
		||||
        $this->law->getRights()->add($right);
 | 
			
		||||
        $this->assertTrue($this->lawPermissionChecker->hasPermission($clientRight));
 | 
			
		||||
        $otherReciever = new PureSource();
 | 
			
		||||
        $right->setReciever($otherReciever);
 | 
			
		||||
        $this->assertFalse($this->lawPermissionChecker->hasPermission($clientRight));
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -12,6 +12,9 @@ use App\Domain\RightManagement\RightChecker;
 | 
			
		||||
use App\DBAL\Types\Meta\Right\CRUDType;
 | 
			
		||||
use App\Entity\Source\PureSource;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @author kevinfrantz
 | 
			
		||||
 */
 | 
			
		||||
class RightCheckerTest extends TestCase
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
@@ -97,4 +100,16 @@ class RightCheckerTest extends TestCase
 | 
			
		||||
        $notGranted3 = $this->rightManager->isGranted($this->layer, $this->type, $thirdSource);
 | 
			
		||||
        $this->assertFalse($notGranted3);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public function testAppliesToAll(): void
 | 
			
		||||
    {
 | 
			
		||||
        $this->assertNull($this->right->setReciever(null));
 | 
			
		||||
        $this->assertTrue($this->rightManager->isGranted($this->layer, $this->type, $this->source));
 | 
			
		||||
        $source2 = new PureSource();
 | 
			
		||||
        $this->assertTrue($this->rightManager->isGranted($this->layer, $this->type, $source2));
 | 
			
		||||
        $source3 = new PureSource();
 | 
			
		||||
        $this->assertNull($this->right->setReciever($source3));
 | 
			
		||||
        $this->assertTrue($this->rightManager->isGranted($this->layer, $this->type, $source3));
 | 
			
		||||
        $this->assertFalse($this->rightManager->isGranted($this->layer, $this->type, $source2));
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user