diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
commit | 19fcec84d8d7d21e796c7624e521b60d28ee21ed (patch) | |
tree | 42d26aa27d1e3f7c0b8bd3fd14e7d7082f5008dc /src/jaegertracing/thrift/lib/php/test/Protocol/TSimpleJSONProtocolTest.php | |
parent | Initial commit. (diff) | |
download | ceph-19fcec84d8d7d21e796c7624e521b60d28ee21ed.tar.xz ceph-19fcec84d8d7d21e796c7624e521b60d28ee21ed.zip |
Adding upstream version 16.2.11+ds.upstream/16.2.11+dsupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/jaegertracing/thrift/lib/php/test/Protocol/TSimpleJSONProtocolTest.php')
-rw-r--r-- | src/jaegertracing/thrift/lib/php/test/Protocol/TSimpleJSONProtocolTest.php | 254 |
1 files changed, 254 insertions, 0 deletions
diff --git a/src/jaegertracing/thrift/lib/php/test/Protocol/TSimpleJSONProtocolTest.php b/src/jaegertracing/thrift/lib/php/test/Protocol/TSimpleJSONProtocolTest.php new file mode 100644 index 000000000..e4a13736e --- /dev/null +++ b/src/jaegertracing/thrift/lib/php/test/Protocol/TSimpleJSONProtocolTest.php @@ -0,0 +1,254 @@ +<?php + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + * + * @package thrift.test + */ + +namespace Test\Thrift\Protocol; + +use PHPUnit\Framework\TestCase; +use Test\Thrift\Fixtures; +use Thrift\Protocol\TSimpleJSONProtocol; +use Thrift\Transport\TMemoryBuffer; + +require __DIR__ . '/../../../../vendor/autoload.php'; + +/*** + * This test suite depends on running the compiler against the + * standard ThriftTest.thrift file: + * + * lib/php/test$ ../../../compiler/cpp/thrift --gen php -r \ + * --out ./packages ../../../test/ThriftTest.thrift + * + * @runTestsInSeparateProcesses + */ +class TSimpleJSONProtocolTest extends TestCase +{ + private $transport; + private $protocol; + + public static function setUpBeforeClass() + { + + /** @var \Composer\Autoload\ClassLoader $loader */ + $loader = require __DIR__ . '/../../../../vendor/autoload.php'; + $loader->addPsr4('', __DIR__ . '/../packages/php'); + + Fixtures::populateTestArgs(); + TSimpleJSONProtocolFixtures::populateTestArgsSimpleJSON(); + } + + public function setUp() + { + $this->transport = new TMemoryBuffer(); + $this->protocol = new TSimpleJSONProtocol($this->transport); + $this->transport->open(); + } + + /** + * WRITE TESTS + */ + public function testVoidWrite() + { + $args = new \ThriftTest\ThriftTest_testVoid_args(); + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testVoid']; + + $this->assertEquals($expected, $actual); + } + + public function testString1Write() + { + $args = new \ThriftTest\ThriftTest_testString_args(); + $args->thing = Fixtures::$testArgs['testString1']; + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testString1']; + + $this->assertEquals($expected, $actual); + } + + public function testString2Write() + { + $args = new \ThriftTest\ThriftTest_testString_args(); + $args->thing = Fixtures::$testArgs['testString2']; + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testString2']; + + $this->assertEquals($expected, $actual); + } + + public function testDoubleWrite() + { + $args = new \ThriftTest\ThriftTest_testDouble_args(); + $args->thing = Fixtures::$testArgs['testDouble']; + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testDouble']; + + $this->assertEquals($expected, $actual); + } + + public function testByteWrite() + { + $args = new \ThriftTest\ThriftTest_testByte_args(); + $args->thing = Fixtures::$testArgs['testByte']; + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testByte']; + + $this->assertEquals($expected, $actual); + } + + public function testI32Write() + { + $args = new \ThriftTest\ThriftTest_testI32_args(); + $args->thing = Fixtures::$testArgs['testI32']; + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testI32']; + + $this->assertEquals($expected, $actual); + } + + public function testI64Write() + { + $args = new \ThriftTest\ThriftTest_testI64_args(); + $args->thing = Fixtures::$testArgs['testI64']; + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testI64']; + + $this->assertEquals($expected, $actual); + } + + public function testStructWrite() + { + $args = new \ThriftTest\ThriftTest_testStruct_args(); + $args->thing = Fixtures::$testArgs['testStruct']; + + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testStruct']; + + $this->assertEquals($expected, $actual); + } + + public function testNestWrite() + { + $args = new \ThriftTest\ThriftTest_testNest_args(); + $args->thing = Fixtures::$testArgs['testNest']; + + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testNest']; + + $this->assertEquals($expected, $actual); + } + + public function testMapWrite() + { + $args = new \ThriftTest\ThriftTest_testMap_args(); + $args->thing = Fixtures::$testArgs['testMap']; + + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testMap']; + + $this->assertEquals($expected, $actual); + } + + public function testStringMapWrite() + { + $args = new \ThriftTest\ThriftTest_testStringMap_args(); + $args->thing = Fixtures::$testArgs['testStringMap']; + + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testStringMap']; + + $this->assertEquals($expected, $actual); + } + + public function testSetWrite() + { + $args = new \ThriftTest\ThriftTest_testSet_args(); + $args->thing = Fixtures::$testArgs['testSet']; + + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testSet']; + + $this->assertEquals($expected, $actual); + } + + public function testListWrite() + { + $args = new \ThriftTest\ThriftTest_testList_args(); + $args->thing = Fixtures::$testArgs['testList']; + + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testList']; + + $this->assertEquals($expected, $actual); + } + + public function testEnumWrite() + { + $args = new \ThriftTest\ThriftTest_testEnum_args(); + $args->thing = Fixtures::$testArgs['testEnum']; + + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testEnum']; + + $this->assertEquals($expected, $actual); + } + + public function testTypedefWrite() + { + $args = new \ThriftTest\ThriftTest_testTypedef_args(); + $args->thing = Fixtures::$testArgs['testTypedef']; + + $args->write($this->protocol); + + $actual = $this->transport->read(Fixtures::$bufsize); + $expected = TSimpleJSONProtocolFixtures::$testArgsJSON['testTypedef']; + + $this->assertEquals($expected, $actual); + } +} |