コード例 #1
0
 public function testLoadAndApprovesReservationSendingNotifications()
 {
     $referenceNumber = 'rn';
     $builder = new ExistingReservationSeriesBuilder();
     $reservation = $builder->Build();
     $this->page->expects($this->once())->method('GetReferenceNumber')->will($this->returnValue($referenceNumber));
     $this->persistence->expects($this->once())->method('LoadByReferenceNumber')->with($this->equalTo($referenceNumber))->will($this->returnValue($reservation));
     $this->handler->expects($this->once())->method('Handle')->with($this->equalTo($reservation), $this->equalTo($this->page))->will($this->returnValue(true));
     $this->auth->expects($this->once())->method('CanApprove')->with($this->equalTo(new ReservationViewAdapter($reservation)), $this->equalTo($this->fakeUser))->will($this->returnValue(true));
     $this->presenter->PageLoad();
     $this->assertTrue(in_array(new SeriesApprovedEvent($reservation), $reservation->GetEvents()));
 }
コード例 #2
0
 public function testUpdatesReservationAttributeIfTheUserCanEdit()
 {
     $referenceNumber = 'rn';
     $id = 111;
     $value = 'new attribute value';
     $user = $this->fakeUser;
     $resultCollector = new ManageReservationsUpdateAttributeResultCollector();
     $reservation = new ExistingReservationSeries();
     $reservation->UpdateBookedBy($user);
     $reservation->AddAttributeValue(new AttributeValue($id, $value));
     $this->persistenceService->expects($this->once())->method('LoadByReferenceNumber')->with($this->equalTo($referenceNumber))->will($this->returnValue($reservation));
     $this->reservationHandler->expects($this->once())->method('Handle')->with($this->equalTo($reservation), $this->equalTo($resultCollector));
     $result = $this->service->UpdateAttribute($referenceNumber, $id, $value, $user);
 }
コード例 #3
0
 public function testUsesFirstAdditionalResourceIfPrimaryIsRemoved()
 {
     $referenceNumber = $this->page->existingReferenceNumber;
     $builder = new ExistingReservationSeriesBuilder();
     $builder->WithPrimaryResource(new FakeBookableResource(100));
     $expectedSeries = $builder->Build();
     $additionalId = 5;
     $this->page->resourceId = null;
     $this->page->resourceIds = array($additionalId);
     $resource = new FakeBookableResource($additionalId);
     $this->persistenceService->expects($this->once())->method('LoadByReferenceNumber')->with($this->equalTo($referenceNumber))->will($this->returnValue($expectedSeries));
     $this->resourceRepository->expects($this->once())->method('LoadById')->with($this->equalTo($additionalId))->will($this->returnValue($resource));
     $existingSeries = $this->presenter->BuildReservation();
     $this->assertEquals($resource, $existingSeries->Resource());
 }