ServerExceptionTest.php 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <?php
  2. namespace AlibabaCloud\Client\Tests\LowerthanVersion7_2\Unit\Exception;
  3. use GuzzleHttp\Psr7\Response;
  4. use PHPUnit\Framework\TestCase;
  5. use AlibabaCloud\Client\Result\Result;
  6. use AlibabaCloud\Client\Exception\ServerException;
  7. /**
  8. * Class ServerExceptionTest
  9. *
  10. * @package AlibabaCloud\Client\Tests\LowerthanVersion7_2\Unit\Exception
  11. *
  12. * @coversDefaultClass \AlibabaCloud\Client\Exception\ServerException
  13. */
  14. class ServerExceptionTest extends TestCase
  15. {
  16. public function testConstruct()
  17. {
  18. // Setup
  19. $errorMessage = 'errorMsg';
  20. $errorCode = 'errorCode';
  21. $body = \json_encode(
  22. [
  23. 'message' => 'message',
  24. 'code' => 'code',
  25. 'Message' => 'Message',
  26. 'Code' => 'Code',
  27. 'errorMsg' => 'errorMsg',
  28. 'errorCode' => 'errorCode',
  29. 'requestId' => 'requestId',
  30. 'RequestId' => 'RequestId',
  31. ]
  32. );
  33. $result = new Result(new Response(200, [], $body));
  34. // Test
  35. $exception = new ServerException($result, $errorMessage, $errorCode);
  36. // Assert
  37. static::assertEquals($errorMessage, $exception->getErrorMessage());
  38. static::assertEquals($errorCode, $exception->getErrorCode());
  39. static::assertEquals('RequestId', $exception->getRequestId());
  40. static::assertInstanceOf(Result::class, $exception->getResult());
  41. static::assertEquals('message', $exception->getResult()->toArray()['message']);
  42. static::assertEquals('code', $exception->getResult()->toArray()['code']);
  43. static::assertEquals('Message', $exception->getResult()->toArray()['Message']);
  44. static::assertEquals('Code', $exception->getResult()->toArray()['Code']);
  45. static::assertEquals('errorMsg', $exception->getResult()->toArray()['errorMsg']);
  46. static::assertEquals('errorCode', $exception->getResult()->toArray()['errorCode']);
  47. static::assertEquals('requestId', $exception->getResult()->toArray()['requestId']);
  48. static::assertEquals('RequestId', $exception->getResult()->toArray()['RequestId']);
  49. }
  50. public function testNoContentAndParameter()
  51. {
  52. // Setup
  53. $body = \json_encode(
  54. [
  55. '1' => '1'
  56. ]
  57. );
  58. $result = new Result(new Response(200, [], $body));
  59. // Test
  60. $exception = new ServerException($result);
  61. // Assert
  62. static::assertEquals('{"1":"1"}', $exception->getErrorMessage());
  63. }
  64. }