array( 'status' => 1, 'QTime' => 13, ), 'spellcheck' => array( 'suggestions' => array( 'd', array( 'numFound' => 2, 'startOffset' => 3, 'endOffset' => 7, 'suggestion' => array( 'disk', 'ddr' ) ), 'vid', array( 'numFound' => 1, 'startOffset' => 2, 'endOffset' => 5, 'suggestion' => array( 'video', ) ), 'collation', 'disk video' ), ), ); $query = new Solarium_Query_Suggester(); $resultStub = $this->getMock('Solarium_Result_Suggester', array(), array(), '', false); $resultStub->expects($this->any()) ->method('getData') ->will($this->returnValue($data)); $resultStub->expects($this->any()) ->method('getQuery') ->will($this->returnValue($query)); $parser = new Solarium_Client_ResponseParser_Suggester; $result = $parser->parse($resultStub); $expected = array( 'd' => new Solarium_Result_Suggester_Term(2,3,7,array('disk','ddr')), 'vid' => new Solarium_Result_Suggester_Term(1,2,5,array('video')) ); $this->assertEquals($expected, $result['results']); $this->assertEquals('disk video', $result['collation']); } }