public function testMethodsReturnTemplates()
{
$this->getApp()->flush();
$this->getService('twig.loader.filesystem')->prependPath(TEST_ROOT . '/app/view/twig');
$this->setRequest(Request::create('/bolt/extend'));
$response = $this->controller()->overview();
$this->assertEquals('@bolt/extend/extend.twig', $response->getTemplate()->getTemplateName());
$response = $this->controller()->installPackage();
$this->assertEquals('@bolt/extend/_action-modal.twig', $response->getTemplate()->getTemplateName());
$this->setRequest(Request::create('/', 'GET', ['package' => 'bolt/theme-2014']));
$controller = $this->getMockBuilder(Extend::class)->setMethods(['installInfo', 'packageInfo', 'check'])->getMock();
$controller->expects($this->any())->method('installInfo')->will($this->returnValue(new Response('{"dev": [{"name": "bolt/theme-2014","version": "dev-master"}],"stable": []}')));
$response = $controller->installInfo($this->getRequest());
$this->assertNotEmpty($response);
$this->setRequest(Request::create('/', 'GET', ['package' => 'bolt/theme-2014', 'version' => 'dev-master']));
$controller->expects($this->any())->method('packageInfo')->will($this->returnValue(new Response('{"name":"bolt\\/theme-2014","version":"unknown","type":"unknown","descrip":""}')));
$response = $controller->packageInfo($this->getRequest());
$this->assertNotEmpty($response);
$content = json_decode($response->getContent());
$this->assertAttributeNotEmpty('name', $content);
$this->setRequest(Request::create('/'));
$controller->expects($this->any())->method('check')->will($this->returnValue(new Response('{"updates":[],"installs":[]}')));
$response = $controller->check();
$this->assertNotEmpty($response);
}