Commit 630ee35d authored by Bas de Nooijer's avatar Bas de Nooijer

Added unittest and fix for issue #69

parent 5465aa6b
...@@ -110,12 +110,29 @@ class Solarium_Client_ResponseParser_Analysis_Field extends Solarium_Client_Resp ...@@ -110,12 +110,29 @@ class Solarium_Client_ResponseParser_Analysis_Field extends Solarium_Client_Resp
$class = $typeData[$counter]; $class = $typeData[$counter];
$analysis = $typeData[$counter+1]; $analysis = $typeData[$counter+1];
if (is_string($analysis)) {
$item = new Solarium_Result_Analysis_Item(array(
'text' => $analysis,
'start' => null,
'end' => null,
'position' => null,
'positionHistory' => null,
'type' => null,
));
$classes[] = new Solarium_Result_Analysis_List($class, array($item));
} else {
$items = array(); $items = array();
foreach ($analysis AS $itemData) { foreach ($analysis as $itemData) {
$items[] = new Solarium_Result_Analysis_Item($itemData); $items[] = new Solarium_Result_Analysis_Item($itemData);
} }
$classes[] = new Solarium_Result_Analysis_List($class, $items); $classes[] = new Solarium_Result_Analysis_List($class, $items);
}
$counter += 2; $counter += 2;
} }
......
...@@ -40,6 +40,8 @@ class Solarium_Client_ResponseParser_Analysis_FieldTest extends PHPUnit_Framewor ...@@ -40,6 +40,8 @@ class Solarium_Client_ResponseParser_Analysis_FieldTest extends PHPUnit_Framewor
'field1' => array( 'field1' => array(
'type1' => array( 'type1' => array(
array( array(
'org.apache.solr.analysis.PatternReplaceCharFilter',
'string value',
'analysisClass', 'analysisClass',
array( array(
array( array(
...@@ -81,9 +83,11 @@ class Solarium_Client_ResponseParser_Analysis_FieldTest extends PHPUnit_Framewor ...@@ -81,9 +83,11 @@ class Solarium_Client_ResponseParser_Analysis_FieldTest extends PHPUnit_Framewor
$docs = $result['items'][0]->getItems(); $docs = $result['items'][0]->getItems();
$fields = $docs[0]->getItems(); $fields = $docs[0]->getItems();
$types = $fields[0]->getItems(); $types = $fields[0]->getItems();
$classes = $types[0]->getItems(); $class1items = $types[0]->getItems();
$class2items = $types[1]->getItems();
$this->assertEquals('test2', $classes[1]->getText()); $this->assertEquals('string value', $class1items[0]->getText());
$this->assertEquals('test2', $class2items[1]->getText());
} }
public function testParseNoData() public function testParseNoData()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment