protected function execute(InputInterface $input, OutputInterface $output) { $filename = $input->getOption('file'); $builder = $this->getConfig($input); list($name, $port) = explode(':', $input->getArgument('name') . ':80'); $listenIPv4 = new Directive('listen', [new Param($port)]); $listenIPv6 = new Directive('listen', [new Param("[::]:{$port}"), new Param('default'), new Param('ipv6only=on')]); $server = new Server([$listenIPv4, $listenIPv6]); if ($name != 'localhost' && !empty($name)) { $server->append(new Directive('server_name', [new Param($name)])); } $builder->appendServerNode($server); $builder->dumpFile($filename); }
function it_can_build_with_Server_node(Server $server) { $server->__toString()->willReturn("server {\n}"); $this->append($server); $this->dump()->shouldBeString(); }