public function setup() { parent::setup(); $this->rule = new ResourceParticipationRule(); $this->resourceLimit10 = new FakeBookableResource(1, 'name1'); $this->resourceLimit10->SetMaxParticipants(10); $this->resourceLimit20 = new FakeBookableResource(2, 'name2'); $this->resourceLimit20->SetMaxParticipants(20); }
public function testWhenUserJoinsAllAndThereIsNotSpace() { $invitationAction = InvitationAction::JoinAll; $currentUserId = 1029; $referenceNumber = 'abc123'; $builder = new ExistingReservationSeriesBuilder(); $instance = new TestReservation(); $instance->WithParticipants(array(1)); $instance->WithInvitee($currentUserId); $resource = new FakeBookableResource(1); $resource->SetMaxParticipants(1); $builder->WithCurrentInstance($instance)->WithPrimaryResource($resource); $series = $builder->Build(); $this->page->expects($this->once())->method('GetResponseType')->will($this->returnValue('json')); $this->page->expects($this->once())->method('GetInvitationAction')->will($this->returnValue($invitationAction)); $this->page->expects($this->once())->method('GetInvitationReferenceNumber')->will($this->returnValue($referenceNumber)); $this->page->expects($this->once())->method('GetUserId')->will($this->returnValue($currentUserId)); $this->reservationRepo->expects($this->once())->method('LoadByReferenceNumber')->with($this->equalTo($referenceNumber))->will($this->returnValue($series)); $this->page->expects($this->once())->method('DisplayResult')->with($this->stringContains('ParticipationNotAllowed')); $this->presenter->PageLoad(); }
public function testFiltersByMinCapacity() { $minCapacity = 10; $resource1 = new FakeBookableResource(1, 'resource1'); $resource1->SetMaxParticipants($minCapacity); $resource2 = new FakeBookableResource(2, 'resource2'); $resource2->SetMaxParticipants($minCapacity - 1); $resource3 = new FakeBookableResource(3, 'resource3'); $resource3->SetMaxParticipants($minCapacity + 1); $resources = array($resource1, $resource2, $resource3); $filter = new ScheduleResourceFilter(); $filter->MinCapacity = $minCapacity; $resourceIds = $filter->FilterResources($resources, $this->resourceRepository, $this->attributeService); $this->assertEquals(2, count($resourceIds)); $this->assertEquals(1, $resourceIds[0]); $this->assertEquals(3, $resourceIds[1]); }