19 declare(strict_types=1);
27 $relation = $this->
mock(ilBuddySystemRelation::class);
28 $this->assertInstanceOf(
36 $relation = $this->
mock(ilBuddySystemRelation::class);
37 $relation->expects(self::once())->method(
'isRequested')->willReturn(
true);
38 $relation->expects(self::once())->method(
'isOwnedByActor')->willReturn(
true);
39 $instance =
new Cancel($relation);
41 $this->assertTrue($instance->matches());
46 $relation = $this->
mock(ilBuddySystemRelation::class);
47 $relation->expects(self::once())->method(
'isRequested')->willReturn(
false);
48 $relation->expects(self::never())->method(
'isOwnedByActor');
49 $instance =
new Cancel($relation);
51 $this->assertFalse($instance->matches());
56 $relation = $this->
mock(ilBuddySystemRelation::class);
57 $relation->expects(self::once())->method(
'isRequested')->willReturn(
true);
58 $relation->expects(self::once())->method(
'isOwnedByActor')->willReturn(
false);
59 $instance =
new Cancel($relation);
61 $this->assertFalse($instance->matches());
66 $relation = $this->
mock(ilBuddySystemRelation::class);
67 $state = $this->
mock(ilBuddySystemRelationState::class);
69 $instance =
new Cancel($relation);
71 $this->assertFalse($instance($state));
76 $relation = $this->
mock(ilBuddySystemRelation::class);
77 $state = $this->
mock(ilBuddySystemUnlinkedRelationState::class);
79 $instance =
new Cancel($relation);
81 $this->assertTrue($instance($state));
84 private function mock(
string $className)
86 return $this->getMockBuilder($className)->disableOriginalConstructor()->getMock();
Class ilBuddySystemRelationStateInitiatorShouldOnlyBeAbleToCancelRequestRule.