shouldIgnoreMissing(); $app->instance(IAbstractCalendarSyncWorkRequestRepository::class, $repo_mock); $repo_mock = Mockery::mock(ICalendarSyncInfoRepository::class)->shouldIgnoreMissing(); $app->instance(ICalendarSyncInfoRepository::class, $repo_mock); return $app; } public function testUpdateFourthSameEvent(){ $preprocessor = App::make('App\Services\Model\AdminActionsCalendarSyncPreProcessor'); $summit_event = Mockery::mock(SummitEvent::class); $summit_event->shouldReceive('getId')->andReturn(1); $mock_update_request = Mockery::mock(AdminSummitEventActionSyncWorkRequest::class); $mock_update_request->shouldReceive('getSummitEvent')->andReturn($summit_event); $mock_update_request->shouldReceive('getType')->andReturn(AbstractCalendarSyncWorkRequest::TypeUpdate); $mock_update_request1 = Mockery::mock(AdminSummitEventActionSyncWorkRequest::class); $mock_update_request1->shouldReceive('getSummitEvent')->andReturn($summit_event); $mock_update_request1->shouldReceive('getType')->andReturn(AbstractCalendarSyncWorkRequest::TypeUpdate); $mock_update_request2 = Mockery::mock(AdminSummitEventActionSyncWorkRequest::class); $mock_update_request2->shouldReceive('getSummitEvent')->andReturn($summit_event); $mock_update_request2->shouldReceive('getType')->andReturn(AbstractCalendarSyncWorkRequest::TypeUpdate); $mock_update_request3 = Mockery::mock(AdminSummitEventActionSyncWorkRequest::class); $mock_update_request3->shouldReceive('getSummitEvent')->andReturn($summit_event); $mock_update_request3->shouldReceive('getType')->andReturn(AbstractCalendarSyncWorkRequest::TypeUpdate); $purged_requests = $preprocessor->preProcessActions([ $mock_update_request, $mock_update_request1, $mock_update_request2, $mock_update_request3 ]); $this->assertTrue(count($purged_requests) == 1); } public function testUpdateFourthTimesDeleteSameEvent(){ $preprocessor = App::make('App\Services\Model\AdminActionsCalendarSyncPreProcessor'); $summit_event = Mockery::mock(SummitEvent::class); $summit_event->shouldReceive('getId')->andReturn(1); $mock_update_request = Mockery::mock(AdminSummitEventActionSyncWorkRequest::class); $mock_update_request->shouldReceive('getSummitEvent')->andReturn($summit_event); $mock_update_request->shouldReceive('getType')->andReturn(AbstractCalendarSyncWorkRequest::TypeUpdate); $mock_update_request1 = Mockery::mock(AdminSummitEventActionSyncWorkRequest::class); $mock_update_request1->shouldReceive('getSummitEvent')->andReturn($summit_event); $mock_update_request1->shouldReceive('getType')->andReturn(AbstractCalendarSyncWorkRequest::TypeUpdate); $mock_update_request2 = Mockery::mock(AdminSummitEventActionSyncWorkRequest::class); $mock_update_request2->shouldReceive('getSummitEvent')->andReturn($summit_event); $mock_update_request2->shouldReceive('getType')->andReturn(AbstractCalendarSyncWorkRequest::TypeUpdate); $mock_update_request3 = Mockery::mock(AdminSummitEventActionSyncWorkRequest::class); $mock_update_request3->shouldReceive('getSummitEvent')->andReturn($summit_event); $mock_update_request3->shouldReceive('getType')->andReturn(AbstractCalendarSyncWorkRequest::TypeUpdate); $mock_delete_request = Mockery::mock(AdminSummitEventActionSyncWorkRequest::class); $mock_delete_request->shouldReceive('getSummitEvent')->andReturn($summit_event); $mock_delete_request->shouldReceive('getType')->andReturn(AbstractCalendarSyncWorkRequest::TypeRemove); $purged_requests = $preprocessor->preProcessActions([ $mock_update_request, $mock_update_request1, $mock_delete_request, $mock_update_request2, $mock_update_request3 ]); $this->assertTrue(count($purged_requests) == 1); $this->assertTrue($purged_requests[0]->getType() == AbstractCalendarSyncWorkRequest::TypeUpdate); } public function testDeleteUpdateSameEvent(){ $preprocessor = App::make('App\Services\Model\AdminActionsCalendarSyncPreProcessor'); $summit_event = Mockery::mock(SummitEvent::class); $summit_event->shouldReceive('getId')->andReturn(1); $mock_delete_request = Mockery::mock(AdminSummitEventActionSyncWorkRequest::class); $mock_delete_request->shouldReceive('getSummitEvent')->andReturn($summit_event); $mock_delete_request->shouldReceive('getType')->andReturn(AbstractCalendarSyncWorkRequest::TypeRemove); $mock_update_request = Mockery::mock(AdminSummitEventActionSyncWorkRequest::class); $mock_update_request->shouldReceive('getSummitEvent')->andReturn($summit_event); $mock_update_request->shouldReceive('getType')->andReturn(AbstractCalendarSyncWorkRequest::TypeUpdate); $purged_requests = $preprocessor->preProcessActions([ $mock_delete_request, $mock_update_request ]); $this->assertTrue(count($purged_requests) == 1); $this->assertTrue($purged_requests[0]->getType() == AbstractCalendarSyncWorkRequest::TypeUpdate); } public function testUpdateDeleteSameEvent(){ $preprocessor = App::make('App\Services\Model\AdminActionsCalendarSyncPreProcessor'); $summit_event = Mockery::mock(SummitEvent::class); $summit_event->shouldReceive('getId')->andReturn(1); $mock_delete_request = Mockery::mock(AdminSummitEventActionSyncWorkRequest::class); $mock_delete_request->shouldReceive('getSummitEvent')->andReturn($summit_event); $mock_delete_request->shouldReceive('getType')->andReturn(AbstractCalendarSyncWorkRequest::TypeRemove); $mock_update_request = Mockery::mock(AdminSummitEventActionSyncWorkRequest::class); $mock_update_request->shouldReceive('getSummitEvent')->andReturn($summit_event); $mock_update_request->shouldReceive('getType')->andReturn(AbstractCalendarSyncWorkRequest::TypeUpdate); $purged_requests = $preprocessor->preProcessActions([ $mock_update_request, $mock_delete_request, ]); $this->assertTrue(count($purged_requests) == 1); $this->assertTrue($purged_requests[0]->getType() == AbstractCalendarSyncWorkRequest::TypeRemove); } }