Skip to content

Commit 70d9ec7

Browse files
ENGCOM-6106: #24781: Elasticsearch 6 works with Elasticsearch 5 client on frontend #24974
2 parents 00941cb + eb45516 commit 70d9ec7

File tree

2 files changed

+65
-1
lines changed

2 files changed

+65
-1
lines changed

app/code/Magento/Elasticsearch/etc/di.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,7 @@
267267
</type>
268268
<virtualType name="Magento\Elasticsearch\Elasticsearch5\SearchAdapter\ConnectionManager" type="Magento\Elasticsearch\SearchAdapter\ConnectionManager">
269269
<arguments>
270-
<argument name="clientFactory" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Client\ElasticsearchFactory</argument>
270+
<argument name="clientFactory" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Client\ClientFactoryProxy</argument>
271271
<argument name="clientConfig" xsi:type="object">Magento\Elasticsearch\Model\Config</argument>
272272
</arguments>
273273
</virtualType>
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
<?php
2+
/**
3+
* Copyright © Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
declare(strict_types=1);
7+
8+
namespace Magento\Elasticsearch6\SearchAdapter;
9+
10+
use Magento\Elasticsearch\Elasticsearch5\SearchAdapter\ConnectionManager;
11+
use Magento\TestFramework\Helper\Bootstrap;
12+
13+
/**
14+
* Test for \Magento\Elasticsearch\SearchAdapter\ConnectionManager class.
15+
*/
16+
class ConnectionManagerTest extends \PHPUnit\Framework\TestCase
17+
{
18+
/**
19+
* @var \Magento\Framework\ObjectManagerInterface
20+
*/
21+
private $objectManager;
22+
23+
/**
24+
* @var \Magento\Elasticsearch\SearchAdapter\ConnectionManager
25+
*/
26+
private $connectionManager;
27+
28+
protected function setUp()
29+
{
30+
$this->objectManager = Bootstrap::getObjectManager();
31+
32+
$this->connectionManager = $this->objectManager->create(ConnectionManager::class);
33+
}
34+
35+
/**
36+
* Test if 'elasticsearch5' search engine returned by connection manager.
37+
*
38+
* @magentoAppIsolation enabled
39+
* @magentoConfigFixture default/catalog/search/engine elasticsearch5
40+
*/
41+
public function testCorrectElasticsearchClientEs5()
42+
{
43+
$connection = $this->connectionManager->getConnection();
44+
$this->assertInstanceOf(
45+
\Magento\Elasticsearch\Elasticsearch5\Model\Client\Elasticsearch::class,
46+
$connection
47+
);
48+
}
49+
50+
/**
51+
* Test if 'elasticsearch6' search engine returned by connection manager.
52+
*
53+
* @magentoAppIsolation enabled
54+
* @magentoConfigFixture default/catalog/search/engine elasticsearch6
55+
*/
56+
public function testCorrectElasticsearchClientEs6()
57+
{
58+
$connection = $this->connectionManager->getConnection();
59+
$this->assertInstanceOf(
60+
\Magento\Elasticsearch6\Model\Client\Elasticsearch::class,
61+
$connection
62+
);
63+
}
64+
}

0 commit comments

Comments
 (0)