/** * @expectedException OpenSkill\Datatable\DatatableException * @expectedExceptionMessage A requested column was not found in the columnConfiguration. */ public function testExceptionIfColumnIsNotFound() { $queryConfiguration = QueryConfigurationBuilder::create()->start(0)->length(2)->drawCall(1)->columnOrder('name', 'desc')->build(); $columnConfiguration = ColumnConfigurationBuilder::create()->name('foundColumn')->build(); /** * Create a mocked query builder... */ $queryBuilder = $this->setupMockQueryBuilder(); $queryBuilder->shouldReceive('orderBy')->with('name', 'desc')->once(); $queryBuilder->shouldReceive('skip')->with(0); $queryBuilder->shouldReceive('limit')->with(2); $queryBuilder->shouldReceive('count')->withNoArgs(); $queryBuilder->shouldReceive('get')->withArgs([['name']]); $provider = new QueryBuilderProvider($queryBuilder); $provider->prepareForProcessing($queryConfiguration, [$columnConfiguration]); $getColumnFromName = new \ReflectionMethod($provider, 'getColumnFromName'); $getColumnFromName->setAccessible(true); //$provider->getColumnFromName('notFound'); $getColumnFromName->invoke($provider, 'notFound'); }
private function orderAndSearchNotImplementedTest($searchableType = null) { $queryConfiguration = QueryConfigurationBuilder::create()->start(0)->length(4)->drawCall(1)->columnOrder('name', 'asc')->columnOrder('id', 'desc'); $queryConfiguration = $queryConfiguration->searchValue('blah'); $queryConfiguration = $queryConfiguration->build(); $columnConfiguration = []; $columnConfiguration[] = ColumnConfigurationBuilder::create()->name('id')->searchable(Searchable::NONE())->build(); $columnConfiguration[] = ColumnConfigurationBuilder::create()->name('name')->searchable($searchableType)->build(); // Set up mock item $queryBuilder = $this->setupMockQueryBuilder(); $provider = new QueryBuilderProvider($queryBuilder); $provider->prepareForProcessing($queryConfiguration, $columnConfiguration); $provider->process(); }