35 private $termDropdownStrategy;
40 private $aliasResolver;
45 private $selectBuilder;
50 $this->eavConfig = $this->createMock(EavConfig::class);
51 $this->aliasResolver = $this->createMock(AliasResolver::class);
52 $this->selectBuilder = $this->createMock(SelectBuilder::class);
54 TermDropdownStrategy::class,
56 'eavConfig' => $this->eavConfig,
57 'aliasResolver' => $this->aliasResolver,
58 'selectBuilder' => $this->selectBuilder
67 $this->aliasResolver->expects($this->once())->method(
'getAlias')->willReturn(
$alias);
68 $searchFilter = $this->createPartialMock(
69 FilterInterface::class,
70 [
'getField',
'getType',
'getName']
73 $select = $this->createMock(Select::class);
74 $attribute = $this->createMock(Attribute::class);
76 $this->eavConfig->expects($this->once())->method(
'getAttribute')->willReturn(
$attribute);
77 $attribute->expects($this->once())->method(
'getId')->willReturn($attributeId);
78 $searchFilter->expects($this->once())->method(
'getField');
79 $this->selectBuilder->expects($this->once())->method(
'execute')->with($attributeId,
$alias,
$select);
81 $this->assertTrue($this->termDropdownStrategy->apply($searchFilter,
$select));