_getController(array_merge($methods, ['createTwigView', 'getViewPath']), $className); $controller->method('getViewPath')->willReturn('/tmp'); return $controller; } public function testGetViewer() { $viewer = $this->createMock(TwigView::class); $viewer->expects($this->once())->method('addDefaultExtensions'); $controller = $this->getController(); $controller->method('createTwigView')->willReturn($viewer); $this->assertSame($viewer, $controller->getViewer()); // Idempotent $this->assertSame($viewer, $controller->getViewer()); } }