19 private $objectManagerMock;
22 private $engineResolverMock;
26 $this->objectManagerMock = $this->getMockBuilder(ObjectManagerInterface::class)
27 ->getMockForAbstractClass();
28 $this->engineResolverMock = $this->getMockBuilder(EngineResolverInterface::class)
29 ->getMockForAbstractClass();
34 $currentEngine =
'current_engine';
35 $currentEngineClass = EngineInterface::class;
37 $currentEngine => $currentEngineClass,
40 $this->engineResolverMock->expects($this->once())
41 ->method(
'getCurrentSearchEngine')
42 ->willReturn($currentEngine);
44 $engineMock = $this->getMockBuilder($currentEngineClass)
45 ->setMethods([
'isAvailable'])
46 ->getMockForAbstractClass();
48 $this->objectManagerMock->expects($this->once())
50 ->with($currentEngineClass)
51 ->willReturn($engineMock);
53 $engineMock->expects($this->once())
54 ->method(
'isAvailable')
58 $this->objectManagerMock,
60 $this->engineResolverMock
63 $this->assertEquals($engineMock, $this->model->get());
64 $this->assertEquals($engineMock, $this->model->get());
73 $currentEngine =
'current_engine';
76 $this->engineResolverMock->expects($this->once())
77 ->method(
'getCurrentSearchEngine')
78 ->willReturn($currentEngine);
80 $this->objectManagerMock->expects($this->never())
84 $this->objectManagerMock,
86 $this->engineResolverMock
98 $currentEngine =
'current_engine';
99 $currentEngineClass = \stdClass::class;
101 $currentEngine => $currentEngineClass,
104 $this->engineResolverMock->expects($this->once())
105 ->method(
'getCurrentSearchEngine')
106 ->willReturn($currentEngine);
108 $engineMock = $this->getMockBuilder($currentEngineClass)
109 ->getMockForAbstractClass();
111 $this->objectManagerMock->expects($this->once())
113 ->with($currentEngineClass)
114 ->willReturn($engineMock);
117 $this->objectManagerMock,
119 $this->engineResolverMock
131 $currentEngine =
'current_engine';
132 $currentEngineClass = EngineInterface::class;
134 $currentEngine => $currentEngineClass,
137 $this->engineResolverMock->expects($this->once())
138 ->method(
'getCurrentSearchEngine')
139 ->willReturn($currentEngine);
141 $engineMock = $this->getMockBuilder($currentEngineClass)
142 ->setMethods([
'isAvailable'])
143 ->getMockForAbstractClass();
145 $this->objectManagerMock->expects($this->once())
147 ->with($currentEngineClass)
148 ->willReturn($engineMock);
150 $engineMock->expects($this->once())
151 ->method(
'isAvailable')
155 $this->objectManagerMock,
157 $this->engineResolverMock
testGetWithoutAvailableEngine()