Commit b6b78123 authored by Bas de Nooijer's avatar Bas de Nooijer

Merge pull request #264 from michelole/preserveMulti

Adds support for hl.preserveMulti and per-field options.
parents 960d1549 b08a014d
...@@ -167,6 +167,27 @@ class Field extends Configurable ...@@ -167,6 +167,27 @@ class Field extends Configurable
{ {
return $this->getOption('alternatefield'); return $this->getOption('alternatefield');
} }
/**
* Set preserveMulti option
*
* @param boolean $preservemulti
* @return self Provides fluent interface
*/
public function setPreserveMulti($preservemulti)
{
return $this->setOption('preservemulti', $preservemulti);
}
/**
* Get preserveMulti option
*
* @return boolean|null
*/
public function getPreserveMulti()
{
return $this->getOption('preservemulti');
}
/** /**
* Set formatter option * Set formatter option
......
...@@ -419,6 +419,27 @@ class Highlighting extends Component ...@@ -419,6 +419,27 @@ class Highlighting extends Component
{ {
return $this->getOption('maxalternatefieldlength'); return $this->getOption('maxalternatefieldlength');
} }
/**
* Set preserveMulti option
*
* @param boolean $preservemulti
* @return self Provides fluent interface
*/
public function setPreserveMulti($preservemulti)
{
return $this->setOption('preservemulti', $preservemulti);
}
/**
* Get preserveMulti option
*
* @return boolean|null
*/
public function getPreserveMulti()
{
return $this->getOption('preservemulti');
}
/** /**
* Set formatter option * Set formatter option
......
...@@ -70,6 +70,7 @@ class Highlighting implements ComponentRequestBuilderInterface ...@@ -70,6 +70,7 @@ class Highlighting implements ComponentRequestBuilderInterface
$request->addParam('hl.maxAnalyzedChars', $component->getMaxAnalyzedChars()); $request->addParam('hl.maxAnalyzedChars', $component->getMaxAnalyzedChars());
$request->addParam('hl.alternateField', $component->getAlternateField()); $request->addParam('hl.alternateField', $component->getAlternateField());
$request->addParam('hl.maxAlternateFieldLength', $component->getMaxAlternateFieldLength()); $request->addParam('hl.maxAlternateFieldLength', $component->getMaxAlternateFieldLength());
$request->addParam('hl.preserveMulti', $component->getPreserveMulti());
$request->addParam('hl.formatter', $component->getFormatter()); $request->addParam('hl.formatter', $component->getFormatter());
$request->addParam('hl.simple.pre', $component->getSimplePrefix()); $request->addParam('hl.simple.pre', $component->getSimplePrefix());
$request->addParam('hl.simple.post', $component->getSimplePostfix()); $request->addParam('hl.simple.post', $component->getSimplePostfix());
...@@ -115,6 +116,7 @@ class Highlighting implements ComponentRequestBuilderInterface ...@@ -115,6 +116,7 @@ class Highlighting implements ComponentRequestBuilderInterface
$request->addParam($prefix.'fragsize', $field->getFragSize()); $request->addParam($prefix.'fragsize', $field->getFragSize());
$request->addParam($prefix.'mergeContiguous', $field->getMergeContiguous()); $request->addParam($prefix.'mergeContiguous', $field->getMergeContiguous());
$request->addParam($prefix.'alternateField', $field->getAlternateField()); $request->addParam($prefix.'alternateField', $field->getAlternateField());
$request->addParam($prefix.'preserveMulti', $field->getPreserveMulti());
$request->addParam($prefix.'formatter', $field->getFormatter()); $request->addParam($prefix.'formatter', $field->getFormatter());
$request->addParam($prefix.'simple.pre', $field->getSimplePrefix()); $request->addParam($prefix.'simple.pre', $field->getSimplePrefix());
$request->addParam($prefix.'simple.post', $field->getSimplePostfix()); $request->addParam($prefix.'simple.post', $field->getSimplePostfix());
......
...@@ -54,6 +54,7 @@ class FieldTest extends \PHPUnit_Framework_TestCase ...@@ -54,6 +54,7 @@ class FieldTest extends \PHPUnit_Framework_TestCase
'fragsize' => 25, 'fragsize' => 25,
'mergecontiguous' => true, 'mergecontiguous' => true,
'alternatefield' => 'text', 'alternatefield' => 'text',
'preservemulti' => true,
'formatter' => 'myFormatter', 'formatter' => 'myFormatter',
'simpleprefix' => '<b>', 'simpleprefix' => '<b>',
'simplepostfix' => '</b>', 'simplepostfix' => '</b>',
...@@ -67,6 +68,7 @@ class FieldTest extends \PHPUnit_Framework_TestCase ...@@ -67,6 +68,7 @@ class FieldTest extends \PHPUnit_Framework_TestCase
$this->assertEquals(25, $this->fld->getFragSize()); $this->assertEquals(25, $this->fld->getFragSize());
$this->assertEquals(true, $this->fld->getMergeContiguous()); $this->assertEquals(true, $this->fld->getMergeContiguous());
$this->assertEquals('text', $this->fld->getAlternateField()); $this->assertEquals('text', $this->fld->getAlternateField());
$this->assertEquals(true, $this->fld->getPreserveMulti());
$this->assertEquals('myFormatter', $this->fld->getFormatter()); $this->assertEquals('myFormatter', $this->fld->getFormatter());
$this->assertEquals('<b>', $this->fld->getSimplePrefix()); $this->assertEquals('<b>', $this->fld->getSimplePrefix());
$this->assertEquals('</b>', $this->fld->getSimplePostfix()); $this->assertEquals('</b>', $this->fld->getSimplePostfix());
...@@ -128,6 +130,17 @@ class FieldTest extends \PHPUnit_Framework_TestCase ...@@ -128,6 +130,17 @@ class FieldTest extends \PHPUnit_Framework_TestCase
$this->fld->getAlternateField() $this->fld->getAlternateField()
); );
} }
public function testSetAndGetPreserveMulti()
{
$value = true;
$this->fld->setPreserveMulti($value);
$this->assertEquals(
$value,
$this->fld->getPreserveMulti()
);
}
public function testSetAndGetFormatter() public function testSetAndGetFormatter()
{ {
......
...@@ -64,6 +64,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase ...@@ -64,6 +64,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase
'maxanalyzedchars' => 40, 'maxanalyzedchars' => 40,
'alternatefield' => 'text', 'alternatefield' => 'text',
'maxalternatefieldlength' => 50, 'maxalternatefieldlength' => 50,
'preservemulti' => true,
'formatter' => 'myFormatter', 'formatter' => 'myFormatter',
'simpleprefix' => '<b>', 'simpleprefix' => '<b>',
'simplepostfix' => '</b>', 'simplepostfix' => '</b>',
...@@ -100,6 +101,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase ...@@ -100,6 +101,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase
$this->assertEquals($options['maxanalyzedchars'], $this->hlt->getMaxAnalyzedChars()); $this->assertEquals($options['maxanalyzedchars'], $this->hlt->getMaxAnalyzedChars());
$this->assertEquals($options['alternatefield'], $this->hlt->getAlternateField()); $this->assertEquals($options['alternatefield'], $this->hlt->getAlternateField());
$this->assertEquals($options['maxalternatefieldlength'], $this->hlt->getMaxAlternateFieldLength()); $this->assertEquals($options['maxalternatefieldlength'], $this->hlt->getMaxAlternateFieldLength());
$this->assertEquals($options['preservemulti'], $this->hlt->getPreserveMulti());
$this->assertEquals($options['formatter'], $this->hlt->getFormatter()); $this->assertEquals($options['formatter'], $this->hlt->getFormatter());
$this->assertEquals($options['simpleprefix'], $this->hlt->getSimplePrefix()); $this->assertEquals($options['simpleprefix'], $this->hlt->getSimplePrefix());
$this->assertEquals($options['simplepostfix'], $this->hlt->getSimplePostfix()); $this->assertEquals($options['simplepostfix'], $this->hlt->getSimplePostfix());
...@@ -354,6 +356,17 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase ...@@ -354,6 +356,17 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase
$this->hlt->getMaxAlternateFieldLength() $this->hlt->getMaxAlternateFieldLength()
); );
} }
public function testSetAndGetPreserveMulti()
{
$value = true;
$this->hlt->setPreserveMulti($value);
$this->assertEquals(
$value,
$this->hlt->getPreserveMulti()
);
}
public function testSetAndGetFormatter() public function testSetAndGetFormatter()
{ {
......
...@@ -50,6 +50,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase ...@@ -50,6 +50,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase
$field->setFragSize(25); $field->setFragSize(25);
$field->setMergeContiguous(true); $field->setMergeContiguous(true);
$field->setAlternateField('text'); $field->setAlternateField('text');
$field->setPreserveMulti(true);
$field->setFormatter('myFormatter'); $field->setFormatter('myFormatter');
$field->setSimplePrefix('<b>'); $field->setSimplePrefix('<b>');
$field->setSimplePostfix('</b>'); $field->setSimplePostfix('</b>');
...@@ -63,6 +64,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase ...@@ -63,6 +64,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase
$component->setMaxAnalyzedChars(4); $component->setMaxAnalyzedChars(4);
$component->setAlternateField('fieldC'); $component->setAlternateField('fieldC');
$component->setMaxAlternateFieldLength(5); $component->setMaxAlternateFieldLength(5);
$component->setPreserveMulti(true);
$component->setFormatter('simple'); $component->setFormatter('simple');
$component->setSimplePrefix('<b>'); $component->setSimplePrefix('<b>');
$component->setSimplePostfix('</b>'); $component->setSimplePostfix('</b>');
...@@ -99,6 +101,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase ...@@ -99,6 +101,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase
'hl.maxAnalyzedChars' => 100, 'hl.maxAnalyzedChars' => 100,
'hl.alternateField' => 'fieldC', 'hl.alternateField' => 'fieldC',
'hl.maxAlternateFieldLength' => 5, 'hl.maxAlternateFieldLength' => 5,
'hl.preserveMulti' => 'true',
'hl.formatter' => 'simple', 'hl.formatter' => 'simple',
'hl.simple.pre' => '<b>', 'hl.simple.pre' => '<b>',
'hl.simple.post' => '</b>', 'hl.simple.post' => '</b>',
...@@ -119,6 +122,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase ...@@ -119,6 +122,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase
'f.fieldB.hl.fragsize' => 25, 'f.fieldB.hl.fragsize' => 25,
'f.fieldB.hl.mergeContiguous' => 'true', 'f.fieldB.hl.mergeContiguous' => 'true',
'f.fieldB.hl.alternateField' => 'text', 'f.fieldB.hl.alternateField' => 'text',
'f.fieldB.hl.preserveMulti' => 'true',
'f.fieldB.hl.formatter' => 'myFormatter', 'f.fieldB.hl.formatter' => 'myFormatter',
'f.fieldB.hl.simple.pre' => '<b>', 'f.fieldB.hl.simple.pre' => '<b>',
'f.fieldB.hl.simple.post' => '</b>', 'f.fieldB.hl.simple.post' => '</b>',
...@@ -148,6 +152,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase ...@@ -148,6 +152,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase
$component->setMaxAnalyzedChars(4); $component->setMaxAnalyzedChars(4);
$component->setAlternateField('fieldC'); $component->setAlternateField('fieldC');
$component->setMaxAlternateFieldLength(5); $component->setMaxAlternateFieldLength(5);
$component->setPreserveMulti(true);
$component->setFormatter('simple'); $component->setFormatter('simple');
$component->setSimplePrefix('<b>'); $component->setSimplePrefix('<b>');
$component->setSimplePostfix('</b>'); $component->setSimplePostfix('</b>');
...@@ -183,6 +188,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase ...@@ -183,6 +188,7 @@ class HighlightingTest extends \PHPUnit_Framework_TestCase
'hl.maxAnalyzedChars' => 100, 'hl.maxAnalyzedChars' => 100,
'hl.alternateField' => 'fieldC', 'hl.alternateField' => 'fieldC',
'hl.maxAlternateFieldLength' => 5, 'hl.maxAlternateFieldLength' => 5,
'hl.preserveMulti' => 'true',
'hl.formatter' => 'simple', 'hl.formatter' => 'simple',
'hl.simple.pre' => '<b>', 'hl.simple.pre' => '<b>',
'hl.simple.post' => '</b>', 'hl.simple.post' => '</b>',
......
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