public function test()
 {
     $vhostManager = $this->getMockBuilder('Metfan\\RabbitSetup\\Manager\\RabbitMq\\VhostManager')->disableOriginalConstructor()->getMock();
     $clientPool = $this->getMockBuilder('Metfan\\RabbitSetup\\Http\\ClientPool')->disableOriginalConstructor()->getMock();
     $manager = new ConfigExpertManager($clientPool, $vhostManager);
     $clientPool->expects($this->once())->method('setConnections')->with(['default' => []]);
     $vhostManager->expects($this->once())->method('processVhost')->with('/', ['connection' => 'default', 'parameters' => []]);
     $manager->manageConfig(['connections' => ['default' => []], 'vhosts' => ['/' => ['connection' => 'default', 'parameters' => []]]]);
 }
예제 #2
0
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     $this->container->register(new LoggerProvider($output));
     $this->container['http_client_pool']->overrideUser($input->getOption('user'))->overridePassword($input->getOption('password'));
     try {
         $logger = $this->container['logger'];
         $parser = new ParseExpertConfig();
         $config = $parser->parse($input->getArgument('configFile'));
         $manager = new ConfigExpertManager($this->container['http_client_pool'], $this->container['manager_rabbitmq_vhost'], $logger);
         $manager->manageConfig($config);
     } catch (\Exception $e) {
         $logger->critical($e->getMessage());
         return 1;
     }
     return 0;
 }