OLD | NEW |
(Empty) | |
| 1 <?php |
| 2 |
| 3 require_once('test_base.php'); |
| 4 require_once('test_util.php'); |
| 5 |
| 6 use Google\Protobuf\RepeatedField; |
| 7 use Google\Protobuf\GPBType; |
| 8 use Foo\TestEnum; |
| 9 use Foo\TestMessage; |
| 10 use Foo\TestMessage_Sub; |
| 11 use Foo\TestPackedMessage; |
| 12 use Foo\TestUnpackedMessage; |
| 13 |
| 14 class EncodeDecodeTest extends TestBase |
| 15 { |
| 16 |
| 17 public function testEncode() |
| 18 { |
| 19 $from = new TestMessage(); |
| 20 $this->expectEmptyFields($from); |
| 21 $this->setFields($from); |
| 22 $this->expectFields($from); |
| 23 |
| 24 $data = $from->encode(); |
| 25 $this->assertSame(TestUtil::getGoldenTestMessage(), $data); |
| 26 } |
| 27 |
| 28 public function testDecode() |
| 29 { |
| 30 $to = new TestMessage(); |
| 31 $to->decode(TestUtil::getGoldenTestMessage()); |
| 32 $this->expectFields($to); |
| 33 } |
| 34 |
| 35 public function testEncodeDecode() |
| 36 { |
| 37 $from = new TestMessage(); |
| 38 $this->expectEmptyFields($from); |
| 39 $this->setFields($from); |
| 40 $this->expectFields($from); |
| 41 |
| 42 $data = $from->encode(); |
| 43 |
| 44 $to = new TestMessage(); |
| 45 $to->decode($data); |
| 46 $this->expectFields($to); |
| 47 } |
| 48 |
| 49 public function testEncodeDecodeEmpty() |
| 50 { |
| 51 $from = new TestMessage(); |
| 52 $this->expectEmptyFields($from); |
| 53 |
| 54 $data = $from->encode(); |
| 55 |
| 56 $to = new TestMessage(); |
| 57 $to->decode($data); |
| 58 $this->expectEmptyFields($to); |
| 59 } |
| 60 |
| 61 public function testEncodeDecodeOneof() |
| 62 { |
| 63 $m = new TestMessage(); |
| 64 |
| 65 $m->setOneofInt32(1); |
| 66 $data = $m->encode(); |
| 67 $n = new TestMessage(); |
| 68 $n->decode($data); |
| 69 $this->assertSame(1, $n->getOneofInt32()); |
| 70 |
| 71 $m->setOneofFloat(2.0); |
| 72 $data = $m->encode(); |
| 73 $n = new TestMessage(); |
| 74 $n->decode($data); |
| 75 $this->assertSame(2.0, $n->getOneofFloat()); |
| 76 |
| 77 $m->setOneofString('abc'); |
| 78 $data = $m->encode(); |
| 79 $n = new TestMessage(); |
| 80 $n->decode($data); |
| 81 $this->assertSame('abc', $n->getOneofString()); |
| 82 |
| 83 $sub_m = new TestMessage_Sub(); |
| 84 $sub_m->setA(1); |
| 85 $m->setOneofMessage($sub_m); |
| 86 $data = $m->encode(); |
| 87 $n = new TestMessage(); |
| 88 $n->decode($data); |
| 89 $this->assertSame(1, $n->getOneofMessage()->getA()); |
| 90 } |
| 91 |
| 92 public function testPackedEncode() |
| 93 { |
| 94 $from = new TestPackedMessage(); |
| 95 TestUtil::setTestPackedMessage($from); |
| 96 $this->assertSame(TestUtil::getGoldenTestPackedMessage(), |
| 97 $from->encode()); |
| 98 } |
| 99 |
| 100 public function testPackedDecodePacked() |
| 101 { |
| 102 $to = new TestPackedMessage(); |
| 103 $to->decode(TestUtil::getGoldenTestPackedMessage()); |
| 104 TestUtil::assertTestPackedMessage($to); |
| 105 } |
| 106 |
| 107 public function testPackedDecodeUnpacked() |
| 108 { |
| 109 $to = new TestPackedMessage(); |
| 110 $to->decode(TestUtil::getGoldenTestUnpackedMessage()); |
| 111 TestUtil::assertTestPackedMessage($to); |
| 112 } |
| 113 |
| 114 public function testUnpackedEncode() |
| 115 { |
| 116 $from = new TestUnpackedMessage(); |
| 117 TestUtil::setTestPackedMessage($from); |
| 118 $this->assertSame(TestUtil::getGoldenTestUnpackedMessage(), |
| 119 $from->encode()); |
| 120 } |
| 121 |
| 122 public function testUnpackedDecodePacked() |
| 123 { |
| 124 $to = new TestUnpackedMessage(); |
| 125 $to->decode(TestUtil::getGoldenTestPackedMessage()); |
| 126 TestUtil::assertTestPackedMessage($to); |
| 127 } |
| 128 |
| 129 public function testUnpackedDecodeUnpacked() |
| 130 { |
| 131 $to = new TestUnpackedMessage(); |
| 132 $to->decode(TestUtil::getGoldenTestUnpackedMessage()); |
| 133 TestUtil::assertTestPackedMessage($to); |
| 134 } |
| 135 } |
OLD | NEW |