run() public method

Initiates an event loop for the bot in which it will connect to servers and monitor those connections for events to forward to plugins.
public run ( boolean $autorun = true )
$autorun boolean
 /**
  * @param ConstructEvent $event
  */
 public function construct(ConstructEvent $event)
 {
     $client = new Client();
     $client->setLoop($event->getLoop());
     $bot = new Bot();
     $bot->setConfig(Configure::read('WyriHaximus.Phergie.config'));
     $bot->setClient($client);
     $bot->run(false);
     EventManager::instance()->dispatch(StartEvent::create($event->getLoop(), $bot));
 }
 /**
  * Tests that dependencies can be overridden via configuration.
  */
 public function testOverrideDependencies()
 {
     $client = $this->getMockClient();
     $logger = $this->getMockLogger();
     $parser = $this->getMockParser();
     $converter = $this->getMockConverter();
     $eventQueueFactory = $this->getMockEventQueueFactory();
     $config = array('client' => $client, 'logger' => $logger, 'parser' => $parser, 'converter' => $converter, 'eventQueueFactory' => $eventQueueFactory, 'plugins' => array(), 'connections' => array($this->getMockConnection()));
     $this->bot->setConfig($config);
     $this->bot->run();
     $this->assertSame($client, $this->bot->getClient());
     $this->assertSame($logger, $this->bot->getLogger());
     $this->assertSame($parser, $this->bot->getParser());
     $this->assertSame($converter, $this->bot->getConverter());
     $this->assertSame($eventQueueFactory, $this->bot->getEventQueueFactory());
 }