/** * Show/return documentation * * Returns a ContentNegotiation view model to allow for multiple * representations of documentation. * * @return ViewModel */ public function showAction() { $apiName = $this->params()->fromRoute('api'); $apiVersion = $this->params()->fromRoute('version', '1'); $serviceName = $this->params()->fromRoute('service'); $viewModel = new ViewModel(); $viewModel->setTemplate('zf-apigility-documentation/show'); $viewModel->setVariable('baseUrl', $this->serverUrlViewHelper->__invoke()); if (!$apiName) { $apiList = $this->apiFactory->createApiList(); $viewModel->setVariable('apis', $apiList); $viewModel->setVariable('type', 'apiList'); return $viewModel; } $api = $this->apiFactory->createApi($apiName, $apiVersion); if (!$serviceName) { $viewModel->setVariable('documentation', $api); $viewModel->setVariable('type', 'api'); return $viewModel; } $service = $this->apiFactory->createService($api, $serviceName); $viewModel->setVariable('documentation', $service); $viewModel->setVariable('type', 'service'); return $viewModel; }
/** * @return ViewModel */ public function listAction() { $apis = $this->apiFactory->createApiList(); $viewModel = new ViewModel(['apis' => $apis]); $viewModel->setTemplate('zf-apigility-documentation-blueprint/api-list'); return $viewModel; }
public function testCreateApiList() { $apiList = $this->apiFactory->createApiList(); $this->assertCount(1, $apiList); $api = array_shift($apiList); $this->assertArrayHasKey('name', $api); $this->assertEquals('Test', $api['name']); $this->assertArrayHasKey('versions', $api); $this->assertInternalType('array', $api['versions']); $this->assertEquals(['1'], $api['versions']); }