Yuriy Belenko 4f1d7c0f04
[php] Set required PHP version to 7.2 (#6603)
* Set PHP 7.2 as minimum version

* Update PHPUnit to 8 || 9

* Set Bionic environment in Travis config

* PHPUnit 8 requires void return in static methods

* PHPUnit 8 requires void return in static methods

* Fix curl exception message test

When I run "curl http://wrong_host.zxc" output is:
curl: (6) Could not resolve host: wrong_host.zxc
Maybe this message is different across versions.

Tested curl version:
curl 7.54.0 (x86_64-apple-darwin18.0) libcurl/7.54.0 LibreSSL/2.6.5 zlib/1.2.11 nghttp2/1.24.1

* Update assertions of deprecated assertInternalType

* Migrate to expectException method of PHPUnit 8

* Fix PHPCS Fixer errors

* Replace deprecated 'assertRegExp' assertion

* Exclude PHPUnit and php-cs-fixer cache

* Refresh samples

* Set root Travis CI environment to PHP 7.2.5

* Change to 7.3 as 7.2.27 is highest preinstalled

* Fix testWrongHost test
2020-06-14 22:41:03 +08:00

134 lines
4.0 KiB
PHP

<?php
namespace OpenAPI\Client;
use PHPUnit\Framework\TestCase;
class OrderApiTest extends TestCase
{
// add a new pet (id 10005) to ensure the pet object is available for all the tests
public static function setUpBeforeClass(): void
{
// for error reporting (need to run with php5.3 to get no warning)
//ini_set('display_errors', 1);
//error_reporting(~0);
}
// test get inventory
public function testOrderEnum()
{
$this->assertSame(Model\Order::STATUS_PLACED, "placed");
$this->assertSame(Model\Order::STATUS_APPROVED, "approved");
}
// test get inventory
public function testOrder()
{
// initialize the API client
$order = new Model\Order();
$order->setStatus("placed");
$this->assertSame("placed", $order->getStatus());
}
public function testOrderException()
{
// initialize the API client
$this->expectException(\InvalidArgumentException::class);
$order = new Model\Order();
$order->setStatus("invalid_value");
}
// test deseralization of order
public function testDeserializationOfOrder()
{
$order_json = <<<ORDER
{
"id": 10,
"petId": 20,
"quantity": 30,
"shipDate": "2015-08-22T07:13:36.613Z",
"status": "placed",
"complete": false
}
ORDER;
$order = ObjectSerializer::deserialize(
json_decode($order_json),
'OpenAPI\Client\Model\Order'
);
$this->assertInstanceOf('OpenAPI\Client\Model\Order', $order);
$this->assertSame(10, $order->getId());
$this->assertSame(20, $order->getPetId());
$this->assertSame(30, $order->getQuantity());
$this->assertTrue(new \DateTime("2015-08-22T07:13:36.613Z") == $order->getShipDate());
$this->assertSame("placed", $order->getStatus());
$this->assertSame(false, $order->getComplete());
}
// test deseralization of array of array of order
public function testDeserializationOfArrayOfArrayOfOrder()
{
$order_json = <<<ORDER
[[{
"id": 10,
"petId": 20,
"quantity": 30,
"shipDate": "2015-08-22T07:13:36.613Z",
"status": "placed",
"complete": false
}]]
ORDER;
$order = ObjectSerializer::deserialize(
json_decode($order_json),
'OpenAPI\Client\Model\Order[][]'
);
$this->assertArrayHasKey(0, $order);
$this->assertArrayHasKey(0, $order[0]);
$_order = $order[0][0];
$this->assertInstanceOf('OpenAPI\Client\Model\Order', $_order);
$this->assertSame(10, $_order->getId());
$this->assertSame(20, $_order->getPetId());
$this->assertSame(30, $_order->getQuantity());
$this->assertTrue(new \DateTime("2015-08-22T07:13:36.613Z") == $_order->getShipDate());
$this->assertSame("placed", $_order->getStatus());
$this->assertSame(false, $_order->getComplete());
}
// test deseralization of map of map of order
public function testDeserializationOfMapOfMapOfOrder()
{
$order_json = <<<ORDER
{
"test": {
"test2": {
"id": 10,
"petId": 20,
"quantity": 30,
"shipDate": "2015-08-22T07:13:36.613Z",
"status": "placed",
"complete": false
}
}
}
ORDER;
$order = ObjectSerializer::deserialize(
json_decode($order_json),
'map[string,map[string,\OpenAPI\Client\Model\Order]]'
);
$this->assertArrayHasKey('test', $order);
$this->assertArrayHasKey('test2', $order['test']);
$_order = $order['test']['test2'];
$this->assertInstanceOf('OpenAPI\Client\Model\Order', $_order);
$this->assertSame(10, $_order->getId());
$this->assertSame(20, $_order->getPetId());
$this->assertSame(30, $_order->getQuantity());
$this->assertTrue(new \DateTime("2015-08-22T07:13:36.613Z") == $_order->getShipDate());
$this->assertSame("placed", $_order->getStatus());
$this->assertSame(false, $_order->getComplete());
}
}