Ejemplo n.º 1
0
 void checkCallback() {
     report(0, "checking callback...");
     BufferedPort<Bottle> out;
     PortReaderBufferTestHelper in;
     out.open("/out");
     in.open("/in");
     in.useCallback();
     Network::connect("/out","/in");
     Network::sync("/out");
     Network::sync("/in");
     out.prepare().fromString("1 2 3");
     out.write();
     int rep = 0;
     while (in.count==0 && rep<50) {
         Time::delay(0.1);
         rep++;
     }
     checkEqual(in.count,3,"got message #1");
     in.disableCallback();
     out.prepare().fromString("1 2 3 4");
     out.write(true);
     Bottle *datum = in.read();
     checkTrue(datum!=NULL, "got message #2");
     checkEqual(datum->size(),4,"message is ok");
     in.useCallback();
     in.count = 0;
     out.prepare().fromString("1 2 3 4 5");
     out.write(true);
     rep = 0;
     while (in.count==0 && rep<50) {
         Time::delay(0.1);
         rep++;
     }
     checkEqual(in.count,5,"got message #3");
 }
Ejemplo n.º 2
0
 void checkCallbackNoOpen() {
     report(0, "checking callback part without open...");
     {
         report(0, "test 1");
         PortReaderBufferTestHelper in;
         in.useCallback();
         in.disableCallback();
     }
     {
         report(0, "test 2");
         PortReaderBufferTestHelper in;
         in.useCallback();
         in.disableCallback();
     }
     {
         report(0, "test 3");
         PortReaderBufferTestHelper in;
         in.useCallback();
     }
     {
         report(0, "test 4");
         PortReaderBufferTestHelper in;
         in.useCallback();
         in.close();
     }
 }