/**
  * Tests fromEvent().
  */
 public function testFromEvent()
 {
     $event = Phake::mock('\\Phergie\\Irc\\Event\\UserEventInterface');
     // EventInterface
     $message = 'message';
     $connection = Phake::mock('\\Phergie\\Irc\\ConnectionInterface');
     $params = array('param1', 'param2');
     $command = 'command';
     Phake::when($event)->getMessage()->thenReturn($message);
     Phake::when($event)->getConnection()->thenReturn($connection);
     Phake::when($event)->getParams()->thenReturn($params);
     Phake::when($event)->getCommand()->thenReturn($command);
     // UserEventInterface
     $prefix = 'prefix';
     $nick = 'nick';
     $username = '******';
     $host = 'host';
     $targets = array('target1', 'target2');
     Phake::when($event)->getPrefix()->thenReturn($prefix);
     Phake::when($event)->getNick()->thenReturn($nick);
     Phake::when($event)->getUsername()->thenReturn($username);
     Phake::when($event)->getHost()->thenReturn($host);
     Phake::when($event)->getTargets()->thenReturn($targets);
     $this->event->fromEvent($event);
     // EventInterface
     $this->assertSame($message, $this->event->getMessage());
     $this->assertSame($connection, $this->event->getConnection());
     $this->assertSame($params, $this->event->getParams());
     $this->assertSame($command, $this->event->getCommand());
     // UserEventInterface
     $this->assertSame($prefix, $this->event->getPrefix());
     $this->assertSame($nick, $this->event->getNick());
     $this->assertSame($username, $this->event->getUsername());
     $this->assertSame($host, $this->event->getHost());
     $this->assertSame($targets, $this->event->getTargets());
 }