public function testSetShards()
 {
     $this->_distributedSearch->addShards(array('shard1' => 'localhost:8983/solr/shard1', 'shard2' => 'localhost:8983/solr/shard2'));
     $this->_distributedSearch->setShards(array('shard3' => 'localhost:8983/solr/shard3', 'shard4' => 'localhost:8983/solr/shard4', 'shard5' => 'localhost:8983/solr/shard5'));
     $shards = $this->_distributedSearch->getShards();
     $this->assertEquals(3, count($shards));
     $this->assertEquals(array('shard3' => 'localhost:8983/solr/shard3', 'shard4' => 'localhost:8983/solr/shard4', 'shard5' => 'localhost:8983/solr/shard5'), $shards);
 }
 /**
  * Add request settings for DistributedSearch
  *
  * @param Solarium_Query_Select_Component_DistributedSearch $component
  * @param Solarium_Client_Request $request
  * @return Solarium_Client_Request
  */
 public function build($component, $request)
 {
     // add shard fields to request
     $shards = array_values($component->getShards());
     if (count($shards)) {
         $request->addParam('shards', implode(',', $shards));
     }
     $request->addParam('shards.qt', $component->getShardRequestHandler());
     return $request;
 }