<?php /* * This file is part of the ONGR package. * * (c) NFQ Technologies UAB <info@nfq.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace ONGR\ElasticsearchDSL\Tests\Highlight; use ONGR\ElasticsearchDSL\Highlight\Highlight; class HighlightTest extends \PHPUnit_Framework_TestCase { /** * Tests GetType method, it should return 'highlight'. */ public function testGetType() { $highlight = new Highlight(); $result = $highlight->getType(); $this->assertEquals('highlight', $result); } /** * Tests ParametersTrait hasParameter method. */ public function testTraitHasParameter() { $highlight = new Highlight(); $highlight->addParameter('_source', ['include' => ['title']]); $result = $highlight->hasParameter('_source'); $this->assertTrue($result); } /** * Tests ParametersTrait removeParameter method. */ public function testTraitRemoveParameter() { $highlight = new Highlight(); $highlight->addParameter('_source', ['include' => ['title']]); $highlight->removeParameter('_source'); $result = $highlight->hasParameter('_source'); $this->assertFalse($result); } /** * Tests ParametersTrait getParameter method. */ public function testTraitGetParameter() { $highlight = new Highlight(); $highlight->addParameter('_source', ['include' => 'title']); $expectedResult = ['include' => 'title']; $this->assertEquals($expectedResult, $highlight->getParameter('_source')); } /** * Tests ParametersTrait getParameters and setParameters methods. */ public function testTraitSetGetParameters() { $highlight = new Highlight(); $highlight->setParameters( [ '_source', ['include' => 'title'], 'content', ['force_source' => true], ] ); $expectedResult = [ '_source', ['include' => 'title'], 'content', ['force_source' => true], ]; $this->assertEquals($expectedResult, $highlight->getParameters()); } /** * Test toArray method. */ public function testToArray() { $highlight = new Highlight(); $highlight->addField('ok'); $highlight->addParameter('_source', ['include' => ['title']]); $highlight->setTags(['<tag>'], ['</tag>']); $result = $highlight->toArray(); $expectedResult = [ 'fields' => [ 'ok' => new \StdClass, ], '_source' => [ 'include' => [ 'title', ], ], 'pre_tags' => [ '<tag>', ], 'post_tags' => [ '</tag>', ], ]; $this->assertEquals($expectedResult, $result); } }