AggregationTest.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Framework\Search\Test\Unit\Response;
  7. use Magento\Framework\TestFramework\Unit\Helper\ObjectManager;
  8. class AggregationTest extends \PHPUnit\Framework\TestCase
  9. {
  10. /**
  11. * @var \Magento\Framework\Search\Response\Aggregation |\PHPUnit_Framework_MockObject_MockObject
  12. */
  13. private $aggregation;
  14. protected function setUp()
  15. {
  16. $helper = new ObjectManager($this);
  17. $buckets = [];
  18. $bucket = $this->getMockBuilder(\Magento\Framework\Search\Response\Bucket::class)
  19. ->disableOriginalConstructor()
  20. ->getMock();
  21. $bucket->expects($this->any())->method('getName')->will($this->returnValue('1'));
  22. $bucket->expects($this->any())->method('getValues')->will($this->returnValue(1));
  23. $buckets[1] = $bucket;
  24. $this->aggregation = $helper->getObject(
  25. \Magento\Framework\Search\Response\Aggregation::class,
  26. [
  27. 'buckets' => $buckets,
  28. ]
  29. );
  30. }
  31. public function testGetIterator()
  32. {
  33. foreach ($this->aggregation as $bucket) {
  34. $this->assertEquals($bucket->getName(), "1");
  35. $this->assertEquals($bucket->getValues(), 1);
  36. }
  37. }
  38. public function testGetBucketNames()
  39. {
  40. $this->assertEquals(
  41. $this->aggregation->getBucketNames(),
  42. ['1']
  43. );
  44. }
  45. public function testGetBucket()
  46. {
  47. $bucket = $this->aggregation->getBucket('1');
  48. $this->assertEquals($bucket->getName(), '1');
  49. $this->assertEquals($bucket->getValues(), 1);
  50. }
  51. }