Exemple #1
0
 public function testMultiPartMessage()
 {
     $zmsgo = new Zmsg(self::$outputSocket);
     $zmsgo->body_set("Hello");
     $zmsgo->wrap("address1", "");
     $zmsgo->wrap("address2");
     $this->assertEquals($zmsgo->parts(), 4);
     $zmsgo->send();
     $zmsgi = new Zmsg(self::$inputSocket);
     $zmsgi->recv();
     $this->assertEquals($zmsgi->parts(), 5);
     $zmsgi->unwrap();
     $this->assertEquals($zmsgi->unwrap(), "address2");
     $zmsgi->body_fmt("%s%s", 'W', "orld");
     $this->assertEquals($zmsgi->body(), "World");
     // Pull off address 1, check that empty part was dropped
     $zmsgi->unwrap();
     $this->assertEquals($zmsgi->parts(), 1);
     // Check that message body was correctly modified
     $part = $zmsgi->pop();
     $this->assertEquals($part, "World");
     $this->assertEquals($zmsgi->parts(), 0);
 }
Exemple #2
0
 public function testLoggerWithContext()
 {
     $endpoint = "inproc://zmq_logger2";
     $receiver = $this->createCollector(self::$context, $endpoint);
     $log1 = new ZLogger('l3', $endpoint, self::$context);
     $this->emptyPoll($receiver);
     $collector = new Zmsg($receiver);
     $msgOut = "asd123";
     $context = [1 => 2, 'a' => 'b'];
     $log1->debug($msgOut, $context);
     $collector->recv();
     $this->assertEquals($collector->parts(), 6);
     $this->assertEquals($collector->body(), json_encode($context));
     $this->assertEquals($collector->pop(), 'l3');
     $collector->pop();
     //time
     $this->assertEquals($collector->pop(), 'debug');
     $this->assertEquals($collector->pop(), $msgOut);
     $this->assertEquals($collector->pop(), ZLogger::CONTEXT_DELIMITER);
     $this->assertEquals($collector->pop(), json_encode($context));
 }